RabbitMQ确认应答和确认发布
首先是个人理解
一、确认应答:
可以在消费端设置自动确认应答和手动确认应答。
将第二个参数设置为true,即表示开启自动应答。
channel.basicConsume(queueName,true,deliverCallBack,cancelCallBack);
开启了自动应答之后,不管消费端有没有处理完从队列里拿到的消息,都会将队列中的消息删除掉。
将这个设置为false,就表示开启了手动应答·,只有在执行了
channel.basicAck(参数一(String类型,消息的tag),参数二(boolean类型,是否为批量应答));后,才会删除队里中的该消息。
二、确认发布
确认发布,是在生产端配置的。如果我们要将消息持久化,就需要保证三步
1、要将消息队列持久化
第二个参数设为true
channel.queueDeclare(QUEUE_NAME,true,false,false,null);
2、要将消息持久化
将第三个参数设为MessageProperties.PERSISTENT_TEXT_PLAIN
channel.basicPublish("",QUEUE_NAME,MessageProperties.PERSISTENT_TEXT_PLAIN,message.getBytes(StandardCharsets.UTF_8));
3、确认消息发布到了队列中
同步方式:
先开启channel.confirmSelect();//默认是关闭的
其实这里我有些疑问, 为什么异步的方式返回的消息序号是有间隔的,并不是发了多少就确认回来多少,但是队列中的元素又没有少,我猜测可能是异步回调的线程被操作系统吃掉了。
RabbitMQ确认应答和确认发布相关推荐
- springboot + rabbitmq 用了消息确认机制,感觉掉坑里了
最近部门号召大伙多组织一些技术分享会,说是要活跃公司的技术氛围,但早就看穿一切的我知道,这 T M 就是为了刷KPI.不过,话说回来这的确是件好事,与其开那些没味的扯皮会,多做技术交流还是很有助于个人 ...
- rabbitmq怎样确认是否已经消费了消息_【朝夕专刊】RabbitMQ生产者/消费者消息确认...
欢迎大家阅读<朝夕Net社区技术专刊> 我们致力于.NetCore的推广和落地,为更好的帮助大家学习,方便分享干货,特创此刊!很高兴你能成为忠实读者,文末福利不要错过哦! 上篇文章介绍了R ...
- TCP协议可靠性保证(确认应答机制,超时重传机制,流量控制,拥塞窗口)
上一次我们知道了TCP协议通过连接管理机制保证可靠性,今天我们继续来看一看TCP协议中其他几种保证可靠性的方法. · 确认应答机制 · 超时重传机制 · 流量控制 · 拥塞窗口 确认应答机制 ...
- 4-5:TCP协议之确认应答(ACK)机制和超时重传机制
文章目录 一:TCP的确认应答(ACK)机制 二:超时重传机制 一:TCP的确认应答(ACK)机制 在TCP中,当发送端的数据达到接收主机时,接收端主机会返回一个已收到消息的通知,这个消息叫做ACK( ...
- RabbitMQ:消息发送确认 与 消息接收确认(ACK)
默认情况下如果一个 Message 被消费者所正确接收则会被从 Queue 中移除 如果一个 Queue 没被任何消费者订阅,那么这个 Queue 中的消息会被 Cache(缓存),当有消费者订阅时则 ...
- RabbitMQ消息接收的确认方式
一.消息接收手工确认 消息从队列推送至消费者后,消息被消费,并从队列中移除.若在消费者消费消息的过程中出现异常或回滚,当消费者从异常中恢复后,想要重新处理异常的消息,然而消息已经从队列中移除,无法再次 ...
- 【TCP 协议2】确认应答、超时重传机制
文章目录 前言 一.确认应答 1, 什么是确认应答 2, 序列号和确认应答号 二.超时重传 1, 什么是超时重传 总结 前言 各位读者好, 我是小陈, 这是我的个人主页, 希望我的专栏能够帮助到你:
- 网络原理 --- 传输层Ⅱ TCP协议中的确认应答,超时重传和连接管理
文章目录 网络原理 传输层 TCP 协议 TCP的基本特性 1.确认应答 2.超时重传 3.连接管理 ❗❗①建立连接(三次握手) ②断开连接(四次挥手) 总结 网络原理 介绍TCP/IP协议中每一层里 ...
- TCP 中确认应答机制
目的 保证 TCP 协议可靠的核心机制. 示例 背景:我给老板发微信. 场景一: 我:老板,我想删库! 老板:滚!(确认应答,ACK) 我收到老板的确认应答(ACK) 之后,才能知道自己不可以删库. ...
最新文章
- sklearn可视化不同数据划分方法的差异:KFold, ShuffleSplit,StratifiedKFold, GroupKFold, StratifiedShuffleSplit.......
- 识别字符串是否为数字
- UVa1491 - Compress the String(dfs)
- CTFshow 文件上传 web155
- linux eclipse go插件,Eclipse的Go插件(goclipse)
- 听腾讯 TEG 大佬谈腾讯万亿级 Elasticsearch 技术解密
- FactoryBean
- 非常好用的卸载软件工具【纯净绿色卸载】
- 播布客里小布老师的全部视频收集
- 关于支付宝口碑的界面问题
- OutMan——集合对象的内存管理、copy的介绍及使用
- 魔兽争霸3技术分析资源汇总
- Import “github.com/gogo/protobuf/gogoproto/gogo.proto“ was not found or had errors.
- 搭建配置私服-nexus ,Maven中的使用——3
- CDN(内容分发网络)
- android 窗口切换花屏,分享Android4平台二级页面滚动花屏问题的解决方案v1.0.0
- sqlserver-创建表
- 浏览记录-history
- 视频跟踪——TLD算法
- 微信公众号post方法Java_Java HttpClient 如何伪装微信浏览器进行POST请求
热门文章
- WMS、WFS、WMTS、TMS
- 低成本2.4G+MCU的SOC芯片,极其适合做低成本玩具灯控等方案
- 11.深入浅出:深度负反馈及放大倍数——参考《模拟电子技术基础》清华大学华成英主讲
- 从零开始学习SVM(二)---松弛变量
- 自动驾驶仿真:ECU TEST 、VTD、VERISTAND连接配置
- final修饰的变量就是常量?final修饰局部变量在栈还是堆还是常量池中?
- Google Chrome 浏览器常用快捷键
- 高校数字化实验室(实训室)综合管理系统
- abs传感器电压有几伏电_汽车ABS传感器的正常电阻值一般为多少呢 还有没有其它检测方法呢 还有它的信号线怎么检测 一般...
- 节流(Throttle)与防抖(Debounce)区别与demo实现+ 图解