本文由簡體中文內容自動轉碼而成。阿里雲不保證此自動轉碼的準確性、完整性及時效性。本文内容請以簡體中文版本為準。

短輪詢和長輪詢

更新時間:2024-10-22 20:19

輕量訊息佇列(原 MNS)提供短輪詢(Short Polling)和長輪詢(Long Polling)兩種方式來擷取隊列中的訊息。

短輪詢

  • 建立隊列時,長輪詢時間設定為0,且發起popMessage請求時waitSeconds設定為0。

  • 使用短輪詢擷取隊列中的訊息,popMessage請求會向Message Service叢集中的一個服務節點發送請求,並立即返回請求相應的訊息,即使該服務節點沒有訊息,SMQ也會立即返迴響應。

長輪詢

  • 建立隊列時,長輪詢時間設定大於0,或發起popMessage請求時waitSeconds設定大於0。長輪詢最大值為30秒。第一優先順序是popMessage的waitSeconds變數,第二優先順序是queue配置的長輪詢時間。

  • 使用長輪詢擷取隊列中的訊息,popMessage請求會一直在服務端運行,直到有訊息的時候才返回。既可以保證立即收到訊息,又避免您發送大量無效請求,減少請求次數,降低費用。

注意事項

如果popMessage請求返回無訊息結果次數過多,可適當增加長輪詢時間,減少請求次數以降低費用。

  • 本頁導讀 (1, M)
  • 短輪詢
  • 長輪詢
  • 注意事項
文檔反饋