2011-03-16 99 views
0

我們需要能夠指定延遲重試失敗的消息。在將消息移動到錯誤隊列之前,NServiceBus會立即或多或少重試n次(按配置)。NServiceBus延遲重試

我需要什麼,能夠做的是給定消息類型指定其不被重新嘗試的任意時間

我讀過的帖子在這裏:

NServiceBus Retry Delay

但這並沒有給我所尋找的。

親切的問候

回答

1

這是不支持作爲現在。你可以做的是讓消息進入錯誤隊列和設置和端點來監視該隊列。您的代碼可以確定重播消息的規則。您可以使用佐賀與超時管理器結合使用。

通常情況下,您將在何時重播消息時有一些規則。在NSB 3.0中,我們有更好的方法來使用FaultManager來完成這個任務。這使您可以選擇放置失敗消息的位置幷包含例外。其中一個選項是數據庫,然後您可以創建一個工作來檢查異常並確定如何處理異常。

最後,獲得此技巧的低技術方法是安排定期運行ReturnToSourceQueue工具以「清理」的作業。我們正在這樣做,幷包括一個警報,所以我們不會無休止地循環消息。