全部產品
Search
文件中心

ApsaraMQ for RabbitMQ:訊息逾時和重試機制

更新時間:Jun 30, 2024

本文介紹雲訊息佇列 RabbitMQ 版服務端預設的訊息重試機制,協助您理解消費失敗後的訊息處理邏輯,並選擇合適的訊息處理策略。

重試機制

雲訊息佇列 RabbitMQ 版服務端有預設的訊息重試機制,不支援您在Consumer用戶端重新設定訊息重試機制和關閉訊息重試機制。雲訊息佇列 RabbitMQ 版服務端預設的訊息重試機制如下:

  • 如果您沒有開啟Consumer用戶端消費訊息,則不會觸發訊息重試。

  • 如果您開啟了Consumer用戶端消費訊息,當消費失敗時,即Consumer用戶端在稍候再試時間內沒有應答訊息,則觸發訊息重試:

    • 稍候再試時間:

      • Serverless版執行個體:5分鐘

      • 專業版執行個體:1分鐘

      • 企業版執行個體:5分鐘

      • 鉑金版執行個體:30分鐘

    • 重試期間,任何一次消費成功,即Consumer用戶端應答訊息,則立即停止訊息重試。

    • 重試最多16次。超過16次還未成功,則停止重試。您可以選擇:

      • 丟棄訊息:如果您沒有為重試失敗的訊息所在的Queue配置死信Exchange,則訊息重試失敗後被丟棄。

      • 將訊息發送至死信Exchange:如果您為重試失敗的訊息所在的Queue配置了死信Exchange,則訊息重試失敗後被發送到死信Exchange,並根據RoutingKey路由至目標Queue。目標Queue中的訊息支援查詢和匯出。如何配置死信Exchange,請參見死信Exchange