MQ的ACK機制


ACK——消息確認機制

  在實際使用RocketMQ的時候我們並不能保證每次發送的消息都剛好能被消費者一次性正常消費成功,可能會存在需要多次消費才能成功或者一直消費失敗的情況,那作為發送者該做如何處理呢?

  為了保證數據不被丟失,RabbitMQ支持消息確認機制,即ack。發送者為了保證消息肯定消費成功,只有使用方明確表示消費成功,RocketMQ才會認為消息消費成功。中途斷電,拋出異常等都不會認為成功——即都會重新投遞。

  保證數據能被正確處理而不僅僅是被Consumer收到,我們就不能采用no-ack或者auto-ack,我們需要手動ack(manual-ack)。在數據處理完成后手動發送ack,這個時候Server才將Message刪除。


免責聲明!

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



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