QueueClient.Receive()傳遞消息的順序是什麼? 我一直在運行一些測試,如果你不完成()它們,我可以看到一些消息(我猜測最頂級的消息)會一遍又一遍地傳送。 有沒有辦法強制它以循環賽方式傳遞?QueueClient.Receive()傳遞的消息的順序是什麼?
0
A
回答
2
如果您有一條已發送但未完成的消息,則一旦LockDuration
過期並再次消耗,則預期消息將顯示在隊列中。你有有來完成信息。如果你不這樣做,它最終會進入DLQ,但在此之前你的消費者會多次接收它。
QueueClient.Receive
獲取代理(服務器)上可用的所有內容。我沒有遵循循環賽傳遞的想法,因爲它是一個隊列。你會得到什麼排隊。作爲一個經驗法則,我建議不要依賴消息的順序。
這樣說,有一個ASB會話功能可以保留和保證訂單的交付。如果你正在尋找會議,之前詢問similar question。
0
當您創建QueueClient
您可以指定接收模式,並將其設置爲ReceiveAndDelete
:
QueueClient.CreateFromConnectionString(connectionString, path, ReceiveMode.ReceiveAndDelete);
這將使你儘快從隊列中刪除該郵件,你收到它,而不必調用Complete
。
如果你不叫Complete
或使用ReceiveAndDelete
,順序將是:
- 中獲取信息(鎖定它的X秒)
- 會按順序下一條消息(鎖定它X秒)
- 第一個消息鎖定已過期,所以您再次獲取並重新鎖定它。
- 永遠等於第二條消息等等。
相關問題
- 1. 什麼是消息傳遞?
- 2. 什麼是OOP中的消息傳遞?
- 3. redis pubsub保證消息是按順序傳遞的嗎?
- 4. JMS消息ID是否表示JMS服務器接收消息的順序?消息的訂單傳遞
- 5. 谷歌雲消息傳遞的目的是什麼
- 6. 在jQuery.proxy中傳遞的附加參數的順序是什麼?
- 7. 爲什麼JMS傳遞消息兩次?
- 8. 什麼是爲消息傳遞功能設置的適當UI?
- 9. 什麼是Rails的最佳消息傳遞插件?
- 10. Java OOP中的消息傳遞是什麼意思?
- 11. 什麼是Google雲消息傳遞(GCM)的AUTH-TOKEN?
- 12. 我們傳遞給MSPN服務的消息格式是什麼?
- 13. SCTP與無序消息傳遞相比,有什麼優勢?
- 14. 什麼是Objective C屬性(@property)賦值消息傳遞符號?
- 15. jms高可用性消息傳遞順序
- 16. TCP消息的順序?
- 17. 傳遞什麼信息dispatch_queue_attr_t
- 18. 帶消息傳遞的IPC
- 19. Cassandra的消息傳遞
- 20. 爲什麼詳細的錯誤消息不會傳遞給HttpClient?
- 21. 爲什麼通過refrance傳遞在PHP中的通知消息?
- 22. Android消息傳遞
- 23. 爲什麼傳遞參數的順序爲g ++重要
- 24. 將確認或錯誤消息傳遞迴視圖的好方法是什麼?
- 25. Chrome擴展中異步消息傳遞的最佳設計模式是什麼?
- 26. 使用MongoDB進行消息傳遞的注意事項是什麼?
- 27. iOS中用於消息傳遞,NSNotification或委派的最佳方法是什麼?
- 28. Firebase消息傳遞錯誤:消息傳遞/權限被阻止
- 29. 消息隊列與消息傳遞
- 30. ServiceStack Redis消息傳遞 - 即時消息?
然後它會從頂部一遍又一遍地得到一些消息。但有多少呢? –
@GökhanKurt不知道我理解你的問題。 –
我從答案中瞭解到,它會鎖定最頂端的幾個並鎖定它們(在您的示例中爲2)。然後當鎖定過期時,它會再次嘗試這兩個。假設2項只是一個例子,它會鎖定和嘗試多少?或者它會鎖定最上面的一個並等到鎖定過期?或者它可能會嘗試從頂部的每個項目,直到鎖再次從頭開始的最頂部的鎖到期。 –