1.5.1 Queue
优质
小牛编辑
132浏览
2023-12-01
1. 为什么createQueue()
返回的response中的queueName与request不一样?我调用其它API时应使用哪一个?
为了避免不同的用户创建同名Queue导致冲突,我们将Queue放置在各用户自已的名字空间下。在目前的实现中,采用“用户id前缀”来做区分。用户之后所有的操作,包括Message收发、Queue更新等,都应使用response返回的queueName。
2. purgeQueue()
操作的含义是什么?为什么这个API调用耗时这么长?
这个操作将清除Queue中的全部Message,包括delayed message、invisible message。purgeQueue()
操作在效果上相当于删除Queue之后再创建,同时保持Queue的属性及Queue关联的Tag不变。因此,这个调用消耗资源较多,一般需要10秒左右的时间来完成。
3. 被删除的Queue还可以恢复吗?
在目前的实现中,删除Queue的同时,会将Queue中的全部Message从物理上删除,因此不可恢复。
4. 通过代码设置EMQ队列的权限,如给某个team设置FULL CONTROL权限,未报错,但结果不是FULL CONTROL权限
检查SDK是否是1.3.0或以上版本,新旧版本SDK在权限方面存在不兼容。
5. 默认Tag不能删除?
是.
6. 怎样扩展队列?
联系管理员增加队列分片个数.