RabbitMQ-死信(Dead Letter)


對於有異常的消息我們可以有如下做法:
  1. 記錄下來再ack。
  2. nack或者reject,同時將requeue設為false。
  3. 在第2條的基礎上增加死信(Dead Letter)。
 
上邊的第3個做法可以讓這些異常的消息進入一個異常消息隊列,等待我們的處理。
 
一個消息成為死信有以下幾種原因:
  • rejected - 也就是上邊第2種做法
  • expired - 超過了隊列設置的TTL(該值為消息在隊列中停留最大時長,注意在達到TTL時消息為“Ready”狀態才會過期生效)
  • maxlen - 隊列里的消息數量超過了設置的最大值(該值也指“Ready”狀態的消息數,而不是Total)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM