使用任何正常的Azure隊列,我彈出消息,然後做一些工作。在完成工作之後,我不想刪除該消息。在Azure隊列再次可見之前,郵件會保留多久?
多久該消息留隱藏它視爲失敗之前,再次取得可見隊列?
例如。
var message = myQueue.GetMessage();
// Do Work ..
myQueue.DeleteMessage();
我的工作可能需要.. 30秒什麼的。或者如果它花費了1分鐘或2分鐘會發生什麼?
我基本上不希望消息在工作完成之前再次可用,因此另一個工人將其從隊列中彈出..即使此工作人員仍在正在工作。
我們可以設置'隱藏'時間嗎?
如果可見性超時已過期,消息再次可見,我會嘗試刪除該消息,因爲我的工作比可見性超時期間花費了更多時間,會發生什麼情況? –
當您將消息出隊(使用獲取消息)時,您會得到一個用於刪除消息的「popreceipt」。這個'popreceipt'保持有效,直到時間消息再次出列。因此,只要您的郵件沒有出列,即使可見性超時期限已過,您也可以刪除該郵件。請閱讀備註部分:https://msdn.microsoft.com/en-us/library/azure/dd179347.aspx。 HTH。 –
謝謝@Gaurav –