如果我丟失了序列號,是否有任何方法可以在Azure服務總線上恢復或刪除延期郵件?在沒有序列號的Azure服務總線上清除延期郵件
這種情況是:我想用BrokeredMessage.Defer()
推遲一條消息。我打算記錄序列號,稍後再使用它來檢索消息。但是如果出現問題 - 假設部署了一些錯誤代碼 - 並且序列號沒有正確記錄,那麼消息就會以延遲狀態駐留在服務總線上,直到消息過期,這可能是永久的。
這主要是因爲該消息會佔用隊列或訂閱空間,而且我還沒有找到任何恢復該空間的方法,因爲沒有完全刪除隊列/訂閱。
是否有任何方式來接收或刪除「丟失」的延期消息?
是的!實際上我在幾個月前就已經知道了。感謝您將此添加爲回覆。這正是我問這個問題時所尋找的。 這是一個特別有用的方法,因爲延遲不會改變隊列上消息的順序,所以延遲消息往往位於隊列的前端,這意味着它們通常是第一個返回的東西'.Peek()'或'.PeekBatch()'。 – dshpak