簡體   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