簡體   English   中英

Azure 服務總線預定消息到達太晚

[英]Azure Service Bus scheduled message arriving too late

我正在使用 ASB 主題。 我正在使用 Microsoft .NET ServiceBus nuget(命名空間Microsoft.Azure.ServiceBus.Core )連接服務

當一條消息到達時,我的消費者要么處理它並釋放消息,要么延遲將其重新發送到主題。

問題是當延遲小於 15 秒時,有時消息只在 15 秒后到達。

例如,將延遲設置為 3 秒或 10 秒通常可以正常工作,但某些消息僅在 15 秒后到達(在 3 秒或 10 秒的情況下)。 將延遲設置為 20 秒時,一切正常,無一例外。

它肯定不會加載到消費者身上,因為在某些情況下它在等待時間內處於空閑狀態。

我嘗試使用prefetchCount但沒有效果。

我想在 Azure UI 中跟蹤預定消息,但似乎此選項僅適用於隊列(而非主題)。

知道為什么會這樣嗎?我該怎么辦? 謝謝!

我使用的是高級版,我的接收器在 azure k8s 中運行。 我很確定這個數字 15s 是在某處定義的,以在某些情況下延遲消息。 想知道是否有人知道這件事。

您可以對消息進行排隊或主題化以供以后處理; 例如,您可以計划一個作業在特定時間准備好由系統處理。 此功能允許創建可靠的分布式基於時間的調度程序。

在排隊時間過去之前,計划的消息不會出現在隊列中。 預定消息可以在此時間之前取消。 當您取消時,通信將被刪除。

您可以使用我們的任何客戶端以兩種方式之一安排消息:

使用標准發送 API,但在發送之前,設置消息的ScheduledEnqueueTimeUtc屬性。

將標准消息和計划時間都傳遞給計划消息 API。這將返回計划消息的 SequenceNumber,您可以在以后需要時使用它來取消它。

有關更多信息,請參閱以下鏈接:

MICROSOFT 文檔:- 預定消息使用服務總線消息傳遞提高性能的最佳實踐

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM