1
我正在使用Microsoft Azure ServiceBus for Queue消息使用WCF進行訂閱。我試圖執行重試邏輯。我使用峯值/鎖定查看消息,然後必須對消息進行一些本地處理。如果該處理失敗,我解鎖消息,以便我可以嘗試再次處理它。問題是我需要建立一個有間隔的處理嘗試。目前它會彈出回隊列,然後幾乎立即進行處理。嘗試之間需要大約2分鐘。Azure ServiceBus重試延遲
我正在使用Microsoft Azure ServiceBus for Queue消息使用WCF進行訂閱。我試圖執行重試邏輯。我使用峯值/鎖定查看消息,然後必須對消息進行一些本地處理。如果該處理失敗,我解鎖消息,以便我可以嘗試再次處理它。問題是我需要建立一個有間隔的處理嘗試。目前它會彈出回隊列,然後幾乎立即進行處理。嘗試之間需要大約2分鐘。Azure ServiceBus重試延遲
如果您在重新處理該特定隊列的消息之前總是需要等待2分鐘,則可以嘗試將隊列上的鎖定超時配置爲2分鐘(加上您期望它將帶您到的時間處理消息),然後讓鎖過期,而不是解鎖它。這有缺點,您需要密切關注處理時間,並在需要時延長鎖定的超時時間。
另一種選擇可能是接收並完成消息,將未來2分鐘的計劃交付設置爲重新發送消息。這有一個缺點,就是你需要使用它並進行確認,這會帶來一定的風險(例如,在你有機會重新發送消息之前,你的進程就會消亡)。