记一次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手动确认消息,而在代码中手动确认了消息。

相关推荐
nxb5562 小时前
haproxy算法,ip透传,自定义haproxy错误页面
运维·服务器
学者猫头鹰6 小时前
分布式事务实战教程
java·分布式
便利店10247 小时前
TCP 为什么有时故意跑不快?拥塞控制与滑动窗口一次讲清
服务器·网络协议·tcp·拥塞控制
杨某不才8 小时前
如何能让Linux服务器对shell 终端 + sftp 文件传输长期保活
linux·运维·服务器
笨蛋不要掉眼泪8 小时前
RabbitMQ消息队列:MQ的可靠性
分布式·rabbitmq·java-rabbitmq
三言老师9 小时前
文本工具组合统计服务器日志数据
linux·运维·服务器
m0_743697599 小时前
DNS服务器
运维·服务器
酷可达拉斯10 小时前
Linux操作系统-免密登录远程操作系统
linux·运维·服务器·网络·云计算
aixingkong92111 小时前
AI超节点Scale Up域总线各层优化设计
linux·服务器·网络
zcmodeltech12 小时前
农业教学实训沙盘物联网控制系统设计:基于STM32与Modbus RTU的“感知-控制-实训”一体化方案
分布式·stm32·嵌入式硬件·物联网