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

相关推荐
六点_dn5 小时前
RabbitMQ学习笔记-部署和使用
笔记·学习·rabbitmq
木子欢儿5 小时前
Intel 架构的 MacBook Pro 运行 Linux 发热量高解决
linux·运维·服务器
ai_coder_ai7 小时前
分布式缓存架构设计与实践
分布式·缓存
纯真时光7 小时前
微服务分布式事务 -- XA,AT,TCC模式
分布式·微服务
清水迎朝阳8 小时前
客户端软件 — 用户统计方案
服务器·c++·客户端·用户统计
会编程的土豆8 小时前
Go 模板初识
linux·运维·服务器
腾讯蓝鲸智云8 小时前
标杆客户实践提炼:CFlow 版本价值流模板实战指南
运维·服务器·自动化·云计算·devops
阿标的博客9 小时前
Active Directory 组织单位和用户
服务器
Deryck_德瑞克9 小时前
【Nginx】配置差异分析
服务器·前端·nginx
前端 贾公子9 小时前
第06章:结构化输出 (上)
java·服务器·前端