pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

RabbitMQ:消息保持“未確認(rèn)";

RabbitMQ: messages remain quot;Unacknowledgedquot;(RabbitMQ:消息保持“未確認(rèn);)
本文介紹了RabbitMQ:消息保持“未確認(rèn)";的處理方法,對(duì)大家解決問題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!

問題描述

限時(shí)送ChatGPT賬號(hào)..

我的 Java 應(yīng)用程序?qū)⑾l(fā)送到 RabbitMQ 交換器,然后交換器將消息重定向到綁定隊(duì)列.我將 Springframework AMQP java 插件與 RabbitMQ 一起使用.

My Java application sends messages to RabbitMQ exchange, then exchange redirects messages to binded queue. I use Springframework AMQP java plugin with RabbitMQ.

問題:消息進(jìn)入隊(duì)列,但它停留在Unacknowledged"狀態(tài),它永遠(yuǎn)不會(huì)變成Ready".

The problem: message comes to queue, but it stays in "Unacknowledged" state, it never becomes "Ready".

可能是什么原因?

推薦答案

Unacknowledged 消息意味著它已被您的消費(fèi)者讀取,但消費(fèi)者從未向 RabbitMQ 代理返回 ACK 表示它已完成處理它.

An Unacknowledged message implies that it has been read by your consumer, but the consumer has never sent back an ACK to the RabbitMQ broker to say that it has finished processing it.

我對(duì) Spring Framework 插件并不太熟悉,但是在某個(gè)地方(對(duì)于您的消費(fèi)者)您將聲明您的隊(duì)列,它可能看起來像這樣(取自 http://www.rabbitmq.com/tutorials/tutorial-two-java.html):

I'm not overly familiar with the Spring Framework plugin, but somewhere (for your consumer) you will be declaring your queue, it might look something like this (taken from http://www.rabbitmq.com/tutorials/tutorial-two-java.html):

channel.queueDeclare(queueName, ....)

然后你將設(shè)置你的消費(fèi)者

then you will setup your consumer

bool ackMode = false;
QueueingConsumer consumer = new QueueingConsumer(channel);
channel.basicConsume(queueName, ackMode, consumer);

上面的 ackMode 是一個(gè)布爾值,通過將其設(shè)置為 false,我們明確告訴 RabbitMQ 我的消費(fèi)者將確認(rèn)收到的每條消息.如果此標(biāo)志設(shè)置為 true,那么您將不會(huì)在 RabbitMQ 中看到 Unacknowledged 計(jì)數(shù),而是在消費(fèi)者讀取消息后(即,它已交付給消費(fèi)者,它將從隊(duì)列中刪除).

ackMode above is a boolean, by setting it to false, we're explicitly saying to RabbitMQ that my consumer will acknowledge each message it is given. If this flag was set to true, then you wouldn't be seeing the Unacknowledged count in RabbitMQ, rather as soon as a consumer has read the message off (i.e it has been delivered to the consumer it will remove it from the queue).

要確認(rèn)消息,您可以執(zhí)行以下操作:

To acknowledge a message you would do something like this:

QueueingConsumer.Delivery delivery = consumer.nextDelivery();
//...do something with the message...
channel.basicAck(delivery.getEnvelope().getDeliveryTag(), false); //the false flag is to do with multiple message acknowledgement

<小時(shí)>

如果您可以發(fā)布您的一些消費(fèi)者代碼,那么我可能會(huì)提供進(jìn)一步的幫助......但同時(shí)看看 BlockingQueueConsumer 具體來說:您將看到的構(gòu)造函數(shù)可以設(shè)置 AcknowledgeMode 并采取查看 nextMessage() 這將返回一個(gè) Message 對(duì)象,其中包含一個(gè)名為 getDeliveryTag() 的方法 這將返回一個(gè) Long ,這是您將在 basicAck 上發(fā)回的 ID


If you can post some of your consumer code then I might be able to help further...but in the mean time take a look at BlockingQueueConsumer specifically: the constructor you will see that you can set the AcknowledgeMode and also take a look at the nextMessage() this will return a Message object which contains a method called getDeliveryTag() this will return a Long which is the ID that you would send back on the basicAck

這篇關(guān)于RabbitMQ:消息保持“未確認(rèn)";的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請(qǐng)聯(lián)系我們刪除處理,感謝您的支持!

相關(guān)文檔推薦

Parsing an ISO 8601 string local date-time as if in UTC(解析 ISO 8601 字符串本地日期時(shí)間,就像在 UTC 中一樣)
How to convert Gregorian string to Gregorian Calendar?(如何將公歷字符串轉(zhuǎn)換為公歷?)
Java: What/where are the maximum and minimum values of a GregorianCalendar?(Java:GregorianCalendar 的最大值和最小值是什么/在哪里?)
Calendar to Date conversion for dates before 15 Oct 1582. Gregorian to Julian calendar switch(1582 年 10 月 15 日之前日期的日歷到日期轉(zhuǎn)換.公歷到儒略歷切換)
java Calendar setFirstDayOfWeek not working(java日歷setFirstDayOfWeek不起作用)
Java: getting current Day of the Week value(Java:獲取當(dāng)前星期幾的值)
主站蜘蛛池模板: 武汉天安盾电子设备有限公司 - 安盾安检,武汉安检门,武汉安检机,武汉金属探测器,武汉测温安检门,武汉X光行李安检机,武汉防爆罐,武汉车底安全检查,武汉液体探测仪,武汉安检防爆设备 | 浙江红酒库-冰雕库-气调库-茶叶库安装-医药疫苗冷库-食品物流恒温恒湿车间-杭州领顺实业有限公司 | 代办建筑资质升级-建筑资质延期就找上海国信启航 | 光泽度计_测量显微镜_苏州压力仪_苏州扭力板手维修-苏州日升精密仪器有限公司 | 冰晶石|碱性嫩黄闪蒸干燥机-有机垃圾烘干设备-草酸钙盘式干燥机-常州市宝康干燥 | 澳威全屋定制官网|极简衣柜十大品牌|衣柜加盟代理|全屋定制招商 百度爱采购运营研究社社群-店铺托管-爱采购代运营-良言多米网络公司 | 杭州网络公司_百度SEO优化-外贸网络推广_抖音小程序开发-杭州乐软科技有限公司 | 杭州公司变更法人-代理记账收费价格-公司注销代办_杭州福道财务管理咨询有限公司 | 东莞画册设计_logo/vi设计_品牌包装设计 - 华略品牌设计公司 | 银川美容培训-美睫美甲培训-彩妆纹绣培训-新娘化妆-学化妆-宁夏倍莱妮职业技能培训学校有限公司 临时厕所租赁_玻璃钢厕所租赁_蹲式|坐式厕所出租-北京慧海通 | 大巴租车平台承接包车,通勤班车,巴士租赁业务 - 鸿鸣巴士 | 郑州电线电缆厂家-防火|低压|低烟无卤电缆-河南明星电缆 | 电位器_轻触开关_USB连接器_广东精密龙电子科技有限公司 | 临海涌泉蜜桔官网|涌泉蜜桔微商批发代理|涌泉蜜桔供应链|涌泉蜜桔一件代发 | 协议书_协议合同格式模板范本大全 | 深圳市索富通实业有限公司-可燃气体报警器 | 可燃气体探测器 | 气体检测仪 | 南京泽朗生物科技有限公司-液体饮料代加工_果汁饮料代加工_固体饮料代加工 | 澳洁干洗店加盟-洗衣店干洗连锁「澳洁干洗免费一对一贴心服务」 干洗加盟网-洗衣店品牌排行-干洗设备价格-干洗连锁加盟指南 | 一级建造师培训_一建培训机构_中建云筑建造师培训网校 | 江西高职单独招生-江西单招考试-江西高职单招网| MVR蒸发器厂家-多效蒸发器-工业废水蒸发器厂家-康景辉集团官网 | 上海冠顶工业设备有限公司-隧道炉,烘箱,UV固化机,涂装设备,高温炉,工业机器人生产厂家 | 蒸汽热收缩机_蒸汽发生器_塑封机_包膜机_封切收缩机_热收缩包装机_真空机_全自动打包机_捆扎机_封箱机-东莞市中堡智能科技有限公司 | 欧洲MV日韩MV国产_人妻无码一区二区三区免费_少妇被 到高潮喷出白浆av_精品少妇自慰到喷水AV网站 | 生物制药洁净车间-GMP车间净化工程-食品净化厂房-杭州波涛净化设备工程有限公司 | 慈溪麦田广告公司,提供慈溪广告设计。 | 物联网卡_物联网卡购买平台_移动物联网卡办理_移动联通电信流量卡通信模组采购平台? | 热闷罐-高温罐-钢渣热闷罐-山东鑫泰鑫智能热闷罐厂家 | 浇钢砖,流钢砖_厂家价低-淄博恒森耐火材料有限公司 | 便携式高压氧舱-微压氧舱-核生化洗消系统-公众洗消站-洗消帐篷-北京利盟救援 | 十字轴_十字轴万向节_十字轴总成-南京万传机械有限公司 | 私人别墅家庭影院系统_家庭影院音响_家庭影院装修设计公司-邦牛影音 | 开平机_纵剪机厂家_开平机生产厂家|诚信互赢-泰安瑞烨精工机械制造有限公司 | 东莞市海宝机械有限公司-不锈钢分选机-硅胶橡胶-生活垃圾-涡电流-静电-金属-矿石分选机 | 薄壁轴承-等截面薄壁轴承生产厂家-洛阳薄壁精密轴承有限公司 | 制冷采购电子商务平台——制冷大市场 | 硬齿面减速机_厂家-山东安吉富传动设备股份有限公司 | 手持式3d激光扫描仪-便携式三维立体扫描仪-北京福禄克斯 | 广州小程序开发_APP开发公司_分销商城系统定制_小跑科技 | 衡阳耐适防护科技有限公司——威仕盾焊接防护用品官网/焊工手套/焊接防护服/皮革防护手套 | 高低温试验箱-模拟高低温试验箱订制-北京普桑达仪器科技有限公司【官网】 |