RabbitMQ消费端报:delivery acknowledgement on channel 5 timed out. Timeout value used: 1800000 ms. This t
场景:
消费端日志控制台报如下错误:
2022-11-25 13:18:29.354 ERROR 13368 --- [.15.178.36:5672] o.s.a.r.c.CachingConnectionFactory :1575 - Channel shutdown: channel error; protocol method: #method<channel.close>(reply-code=406, reply-text=PRECONDITION_FAILED - delivery acknowledgement on channel 5 timed out. Timeout value used: 1800000 ms. This timeout value can be configured, see consumers doc guide to learn more, class-id=0, method-id=0)
分析:
1、rabbitmq开启手动确认模式之后,但是在消费消息之后没有确认导致
2、消息确认超时的间隔太短导致
解决:
1、在消费端消费后,无论消费正常还是异常,都要ack确认
channel.basicAck(deliveryTag, false);
或
channel.basicNack(deliveryTag, false, false);
或
channel.basicReject(deliveryTag, false);
2、在 rabbitmq 服务端的配置文件中,禁用或配置更长的超时时间
配置超时间隔
【1】进入 rabbitmq 容器,cd 到 /etc/rabbitmq/ 目录
// 进入rabbitmq容器
docker exec -ti rabbitmq bash//进入配置文件目录
cd /etc/rabbitmq/
【2】编辑 rabbitmq.conf 文件,如果没有此文件请创建名为 rabbitmq.conf 文件
touch rabbitmq.confvim rabbitmq.conf
【3】把 consumer_timeout 属性加入文件中,值(单位毫秒)设置更长一些,默认30分钟
consumer_timeout = 1800000
禁用确认超时(不建议这样做)
1、编辑 rabbitmq.conf 文件,在文件中添加如下内容
%% advanced.config
[{rabbit, [{consumer_timeout, undefined}]}
].
参考官方介绍:https://www.rabbitmq.com/consumers.html#acknowledgement-timeout
RabbitMQ消费端报:delivery acknowledgement on channel 5 timed out. Timeout value used: 1800000 ms. This t相关推荐
- RabbitMQ pika错误处理 delivery acknowledgement on channel 1 timed out
AMQPChannelError 异常捕获信息: (406, 'PRECONDITION_FAILED - delivery acknowledgement on channel 1 timed ou ...
- RabbitMQ消费端停止问题
RabbitMQ消费端过段时间会停止消费,为了解决这个问题: 可以在消费端的首页添加计时器进行刷新操作,这样消费端就可以一直工作. <script type="text/javascr ...
- rabbitmq.“消费端确认收到”和“推送者确认”(2)
消费端确认模式和数据安全性 当向消费者发送消息时,要考虑消息是否被处理(至少是否被消费者接收到).因为想app,connection等都可能失败,这是基于数据安全的考虑.协议提供了一种机制,当消费者连 ...
- 消息中间件--RabbitMQ --- 消费端限流 -- 非常重要
什么是消费端的·限流? 假设一个场景,首先,我们Rabbitmq服务器有上万条未处理的消息,我们随便打开一个消费者客户端,会出现下面的情况: 巨量的消息瞬间全部推送过来,但是我们单个客户端无法同时处理 ...
- 面试官:说说RabbitMQ 消费端限流、TTL、死信队列
欢迎关注方志朋的博客,回复"666"获面试宝典 1. 为什么要对消费端限流 假设一个场景,首先,我们 Rabbitmq 服务器积压了有上万条未处理的消息,我们随便打开一个消费者客户 ...
- RabbitMQ(七):RabbitMQ 消费端限流、TTL、死信队列是什么?
消费端限流 1. 为什么要对消费端限流 假设一个场景,首先,我们 Rabbitmq 服务器积压了有上万条未处理的消息,我们随便打开一个消费者客户端,会出现这样情况: 巨量的消息瞬间全部推送过来,但是我 ...
- RabbitMQ 消费端限流、TTL、死信队列
目录 消费端限流 1. 为什么要对消费端限流 2.限流的 api 讲解 3.如何对消费端进行限流 TTL 1.消息的 TTL 2.队列的 TTL 死信队列 实现死信队列步骤 总结 消费端限流 1. 为 ...
- rabbitmq 消费端代码获取队列名称_C#调用RabbitMQ实现消息队列的示例代码
前言 我在刚接触使用中间件的时候,发现,中间件的使用并不是最难的,反而是中间件的下载,安装,配置才是最难的. 所以,这篇文章我们从头开始学习RabbitMq,真正的从头开始. 关于消息队列 其实消息队 ...
- Rabbitmq专题:rabbitmq消费端如何做限流?
文章目录 1. 什么是消费端的限流? 2. 解决方案 3. 代码示例 1. 什么是消费端的限流? 场景:在订单高峰期,rabbitmq上已经堆积了很多消息等待消费,如果没有任何限流措施,贸然启动一个消 ...
最新文章
- SpringCloud入门[转]
- django的母板系统
- 限时秒杀┃月销10000+件,风靡全国的steam科学实验套装
- Linux 命令之 loginctl -- 查看系统当前登录的用户
- Ubuntu系统手动安装英伟达驱动程序
- (1)webpack介绍
- 周鸿祎:数字孪生时代 网络攻击影响力更甚核弹
- win10下安装pytorch,torchvision遇到的bug
- lato字体可以商用吗_Google Fonts最受欢迎25款,免版权字体
- VS2015卸载经过
- F2FS文件系统一 设计背景及框架结构
- Kettle使用 js 文件生成节假日表文件 附带2019-2020节假日文件
- 页面添加蒙版,但是不影响页面其他事件响应
- 四川省巴中市谷歌高清卫星地图下载
- 电子基础知识:测判三极管的口诀
- Python基础刻意练习:字典与集合
- 关于电脑网络显示红叉的解决方法
- Penetration_Testing_POC-About 渗透测试有关的POC、EXP、脚本、提权、小工具等
- Thinkbook14G2ITL笔记本重装系统遇到的问题?
- wdcp v2.5.15 php版本,wdcp_v2.5.15(20150826) 如何开启 多 SSL 站点!
热门文章
- AUTOJS利用百度OCR识别找字点击 详细代码
- Opencv进行人脸检测(第三版改进)
- tfs 修改服务器路径,TFS更改服务器密码
- 计算机软件实习项目三 —— 超级玛丽闯迷宫 (代码实现) 12-21
- spring boot项目多个配置文件的profiles.active读取优先级
- hdoj4648(Magic Pen 6)(前缀和)
- 云朵左右移动上下漂浮
- 模仿游戏中台词计算机,《模仿游戏》经典台词大全
- 游戏建模中3DMax的那些神技巧
- 计算机专业的研究热点,计算思维研究热点及趋势