隊列設置TTL(生存時間)爲5分鐘。Azure服務總線 - 帶ScheduledEnqueueTimeUtc的TTL
當您從UtcNow中添加1分鐘的ScheduledEnqueueTimeUtc消息時,消息是否會在5分鐘或6分鐘內過期?
我的假設是6,因爲一旦消息在隊列中處於「活動」狀態,並且消息在預定排隊時間過去之前不活動,我認爲TTL'倒計時'爲'開始'。
然後,如果您排隊6分鐘的消息,它將在11分鐘後過期。
我的假設是否正確?
隊列設置TTL(生存時間)爲5分鐘。Azure服務總線 - 帶ScheduledEnqueueTimeUtc的TTL
當您從UtcNow中添加1分鐘的ScheduledEnqueueTimeUtc消息時,消息是否會在5分鐘或6分鐘內過期?
我的假設是6,因爲一旦消息在隊列中處於「活動」狀態,並且消息在預定排隊時間過去之前不活動,我認爲TTL'倒計時'爲'開始'。
然後,如果您排隊6分鐘的消息,它將在11分鐘後過期。
我的假設是否正確?
你的假設是正確的。有一個消息的幾個屬性:
ScheduledEnqueueTimeUtc
時間消息出現用戶代碼設置 TimeToLive
時間消息,生活在被用戶或實體設置(在你的情況下,隊列) EnqueuedTimeUtc
- 閱讀當由代理接收到的消息-only時間 ExpiresAtUtc
- 計算出的時間時消息將到期
如果消息在時間X烯排隊,隊列上的TTL是5分鐘,並且對於各個消息中指定不低TTL,那麼該消息將在X + 1時間出現在隊列中。即EnqueuedTimeUtc
將X + 1. TimeToLive
5分鐘,將ExpiresAtUtc
如下計算X + 1 + 5
因此一個消息烯排隊6分鐘從現在(X),它不會到期之前X + 11 。