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

相关推荐
Keystone_Onion11 分钟前
跨境电商架构演进:基于美国海外仓的中大件分布式仓网路由优化方案
分布式·架构
王志来1379447300821 分钟前
从分散到集成:工控服务器机箱采购如何实现“一站式”破局
运维·服务器·人工智能·python
March.s1 小时前
深入理解 Linux 系统启动原理
linux·运维·服务器
起名真的太难了1 小时前
Linux系统运维与远程管理核心命令速查指南
linux·运维·服务器
tg_xianheyun2 小时前
阿里云国际账号注册代充值怎么选服务商?
服务器·阿里云·云计算·全球访问优化
IT小盘2 小时前
17-AI应用防止越权访问知识库
服务器·网络·windows
酷可达拉斯2 小时前
自动化运维-Ansible Role详解
linux·运维·服务器·自动化·ansible
为思念酝酿的痛2 小时前
Socket编程--TCP
服务器·网络·tcp/ip
牢姐与蒯2 小时前
Linux首战之进度条
linux·运维·服务器
NJCloud3 小时前
ELK企业级日志分析平台(四)——基于 ELFK + Kafka 的日志采集与传输平台部署实践
linux·运维·分布式·elk·kafka