簡體   English   中英

將過濾的消息保留在Azure Service Bus主題訂閱中

[英]Keeping filtered messages in azure service bus topic subscriptions

我有一個主題,里面有一個訂閱。 訂閱具有一個過濾器,該過濾器過濾一組UserProperty。 過濾效果很好。

問題是,如果根據訂閱的篩選器檢查了一條消息,但該消息與規則不匹配,則會刪除該消息。 有沒有一種方法可以將消息保留在訂閱中而不刪除它們?

我想要這個的原因是我們讓我們的服務在部署時配置了訂閱規則,並且在發送帶有新消息集的消息代理的服務可能會在帶有訂閱客戶端的服務更改規則集和新業務的服務之前被部署邏輯。 我們不想丟失在部署期間發送的消息並在新服務退出時對其進行處理。

干杯。

正如其他人所提到的,這是設計使然,根據您的要求,您可以選擇以下選項

  • 事先創建訂閱,該訂閱將保留已過濾的消息,並且訂閱者服務可以在訂閱出現時從訂閱中獲取它們。

  • 在隊列上使用消息會話 ,而不是每個訂閱者一個會話。 不過,這里的要求是讓您的初始部署發送在這些消息上設置了唯一SessionId消息(這基本上應基於您現在擁有的過濾器),而不是稍后使用過濾器

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM