天天看點

RabbitMQ 重複ACK異常解決

最近搭了兩個項目,處理分布式事務的時候用到的RabbitMQ,發現在手動ACK的時候抛出了如下異常:

Channel shutdown: channel error; protocol method: #method

(reply-code=406, reply-text=PRECONDITION_FAILED – unknown delivery tag 1, class-id=60, method-id=80)

這個異常不影響代碼的運作和結果,但是有個錯誤總歸要解決。

這個異常其實是進行了2次ACK,檢查代碼後發現是自己粗心,消息生産者那設定了手動ACK,但是消費者隻加了yml配置檔案,沒加RabbitMqConfig相關配置,可能是此原因導緻消費端是自動ACK。最後在消費者端也配置了一遍,問題就解決了。