繁体   English   中英

AZURE Service Bus如何对订阅消息进行规则处理?

[英]How AZURE Service Bus rules with messages on subscription?

我不明白

说我有一个问题,一个主题,一个订阅。 以及三个订阅的客户。

我发送一条消息。

第一个客户端收到一条消息,并调用complete()操作。

第二个客户会收到消息吗?

如果有第四位客户(谁订阅了)怎么办?

问题是-何时将邮件从queve / topic / subscription中完全删除?

PS“一对一”时的情况-很明显。

我建议您查看“竞争消费者”模式。 https://msdn.microsoft.com/zh-cn/library/dn568101.aspx?f=255&MSPPError=-2147217396 )。

您可以具有许多角色(即Azure工人角色)来检查队列中的消息(竞争使用者),并在处理时将其锁定。 每个角色都在争取一个信息,而第一个抓住它的人(偶然地)暂时拥有它。 如果获取并处理该消息的使用者成功,请运行Complete()方法,否则运行Abandon(message)。 Complete()永久完成了它,而Abandon则将其重新投入到竞争消费者的狂热中。 如果您健康的话,甚至可以再抓一次!

您可以在Azure管理门户中设置无效消息参数,该参数确定可以为其他使用者重新引入该无效消息的次数。 在某些时候,一切都无法正常进行,因此请杀死该消息,以便其他消息可以不受阻碍地恢复。

如果您有更具体的需求,请告诉我。 乐意提供帮助。 这种模式非常好用。

最亲切的问候...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM