记一次RabbitMQ未配置Listener导致的报错

简单配置rabbitmq参数

java 复制代码
spring: 
     rabbitmq:
          host: 192.168.1.2
          port: 5672
          username: guest
          password: guest
          publisher-confirms: true
          virtual-host: print_test       

发送消息和接收消息虽然能成功,但是监听器接收消息确认后一直会打印如下错误

Shutdown Signal: channel error; protocol method: #method<channel.close>(reply-code=406, reply-text=PRECONDITION_FAILED - unknown delivery tag 0, class-id=60, method-id=80

增加配置后问题得到解决

java 复制代码
1spring: 
     rabbitmq:
          host: 192.168.1.2
          port: 5672
          username: guest
          password: guest
          publisher-confirms: true
          virtual-host: print_test 
          listener:
            simple:
                acknowledge-mode: manual
                retry:
                    #60秒后重试
                    initial-interval: 60000 
                    #启用发布重试
                    enabled: true
                    #传递消息的最大尝试次数
                    max-attempts: 3 
                    #尝试的最大时间间隔
                    max-interval: 60000 
                    #应用于先前传递重试时间间隔的乘数
                    multiplier: 1.0

推测原因是未设置acknowledge-mode: manual手动确认消息,而在代码中手动确认了消息。

相关推荐
余—笙5 小时前
Docker安装rabbitmq并安装延迟队列插件
docker·容器·rabbitmq
韩楚风6 小时前
【参天引擎】一次宕机后的数据恢复,让我把 Cantian 持久化与恢复的六大机制全搞明白了
服务器·网络·数据库·分布式·mysql·架构·cantian
kirs_ur7 小时前
SSD 安全特性 — 加密与 TCG Opal
服务器·网络·安全
智购科技智能售货柜7 小时前
无人售货机连不上服务器?MQTT 频繁掉线排查全流程~YH
运维·服务器
Mortalbreeze7 小时前
深入 Linux Socket 编程:端口号、网络字节序与 struct sockaddr 详解
linux·服务器·网络·c++
躺柒7 小时前
读半导体简史08大型机
linux·服务器·c语言·数据库·unix·ibm
井川廊咏7 小时前
【总集篇】Linux | 如何创建一个 home 目录在 /data 磁盘的 sudo 用户(补档)
linux·运维·服务器
Dear~yxy9 小时前
LVS企业级实战
linux·服务器·lvs
AAA@峥10 小时前
Ceph RBD 块存储全解析:原理与实操汇总
运维·分布式·ceph
Sirius Wu10 小时前
OpenClaw Model Provider(模型提供商)完整详解
服务器·网络·人工智能·安全·aigc