美文网首页
RabbitMQ 手动回复报错

RabbitMQ 手动回复报错

作者: 良人与我 | 来源:发表于2019-04-08 11:40 被阅读0次

出现unknown delivery tag 错误

04-08 10:41:40.616 ERROR [o.s.a.rabbit.connection.CachingConnectionFactory] - Channel shutdown: channel error; protocol method: #method<channel.close>(reply-code=406, reply-text=PRECONDITION_FAILED - unknown delivery tag 1, class-id=60, method-id=80)

RabbitMQ 已经配置为手动ack

  rabbitmq:
    host: 127.0.0.1
    listener:
      acknowledge-mode: MANUAL
      concurrency: 5
      max-concurrency: 10

之前的版本一直用,也没这个问题。
网上搜了搜 说是重复ack导致的原因。

试一试 是不是这个原因?

代码中不去回复ack发现 RabbitMQ 的管理后台看到 也已经回复过ack 了,看来的确是自动回复了。
仔细看了看配置文件,发现这个配置项acknowledge-mode已经被其它配置项取代了。
是以为springboot 新版本做了修改(我的版本是2.0.4.RELEASE)
最后配置修改为如下就OK 了。

    rabbitmq:
        host: 127.0.0.1
        listener:
            simple:
                acknowledge-mode: manual
                concurrency: 1
                max-concurrency: 2

相关文章

网友评论

      本文标题:RabbitMQ 手动回复报错

      本文链接:https://www.haomeiwen.com/subject/npquiqtx.html