最新要闻
- 144MB缓存游戏神U!AMD锐龙7000X3D定档:情人节大礼
- 【当前热闻】美国所有航班都已停飞 电脑系统竟突发故障:官方给出恢复时间
- 焦点关注:日系首款电动B级轿车!本田雅阁插混版来了:可挂绿牌
- 广州一宝马SUV冲撞人群 官方通报:已致5死13伤 司机被控制
- 环球即时:太阳4天内发出两次X级耀斑:几天后指向地球、或引强烈地磁暴
- 每日聚焦:真我GT Neo5标准版曝光:不到200g机身塞进5000mAh和骁龙8+
- 天天微头条丨I Do钻戒母公司被申请破产:被年轻人摒弃 太不保值 有人1.8万买只值180元
- 新款魏牌拿铁DHT-PHEV亮相惹争议 网友吐槽:不能我一个人瞎
- 头条焦点:小米最好高端口碑!雷军:MIX Fold 2研发成本很高 屏幕是天价定制
- 奢侈服装品牌Acne新春广告片被批 网友称其“阴间兔”
- 男童放鞭炮炸飞井盖连砸两车 科普:炮仗遇上下水道堪比小炸弹
- 【环球播资讯】男子吐槽APP看天气预报要点8个广告 网友:手机自带的不好吗?
- 世界快看点丨雅迪参展CES:汽车级快充亮相 20分钟充满80%电池
- 三星Galaxy S24系列或取消Plus版本:销量太惨淡
- 【天天时快讯】大碗更尽兴!海福盛香辣牛肉面大促:每桶到手3块钱
- 今日视点:特斯拉2022年中国销量44万辆 还不敌比亚迪一个宋
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
天天快讯:MQ——如何保证消息不会丢失
(资料图)
一条消息从生产到消费完成这个过程,可以划分三个阶段,为了方便描述,我给每个阶段分别起了个名字。
生产阶段: 在这个阶段,从消息在 Producer 创建出来,经过网络传输发送到 Broker 端。存储阶段: 在这个阶段,消息在 Broker 端存储,如果是集群,消息会在这个阶段被复制到其他的副本上。消费阶段: 在这个阶段,Consumer 从 Broker 上拉取消息,经过网络传输发送到 Consumer 上。
1、生产阶段
在生产阶段,消息队列通过最常用的请求确认机制,来保证消息的可靠传递:当你的代码调用发消息方法时,消息队列的客户端会把消息发送到 Broker,Broker 收到消息后,会给客户端返回一个确认响应,表明消息已经收到了。客户端收到响应后,完成了一次正常消息的发送。只要 Producer 收到了 Broker 的确认响应,就可以保证消息在生产阶段不会丢失。有些消息队列在长时间没收到发送确认响应后,会自动重试,如果重试再失败,就会以返回值或者异常的方式告知用户。你在编写发送消息代码时,需要注意,正确处理返回值或者捕获异常,就可以保证这个阶段的消息不会丢失。以 Kafka 为例,我们看一下如何可靠地发送消息:同步发送时,只要注意捕获异常即可。
try { RecordMetadata metadata = producer.send(record).get(); System.out.println("消息发送成功。");} catch (Throwable e) { System.out.println("消息发送失败!"); System.out.println(e);}
异步发送时,则需要在回调方法里进行检查。这个地方是需要特别注意的,很多丢消息的原因就是,我们使用了异步发送,却没有在回调中检查发送结果。
producer.send(record, (metadata, exception) -> { if (metadata != null) { System.out.println("消息发送成功。"); } else { System.out.println("消息发送失败!"); System.out.println(exception); }});
2、存储阶段
在存储阶段正常情况下,只要 Broker 在正常运行,就不会出现丢失消息的问题,但是如果 Broker 出现了故障,比如进程死掉了或者服务器宕机了,还是可能会丢失消息的。如果对消息的可靠性要求非常高,可以通过配置 Broker 参数来避免因为宕机丢消息。对于单个节点的 Broker,需要配置 Broker 参数,在收到消息后,将消息写入磁盘后再给 Producer 返回确认响应,这样即使发生宕机,由于消息已经被写入磁盘,就不会丢失消息,恢复后还可以继续消费。例如,在 RocketMQ 中,需要将刷盘方式 flushDiskType 配置为 SYNC_FLUSH 同步刷盘。如果是 Broker 是由多个节点组成的集群,需要将 Broker 集群配置成:至少将消息发送到 2 个以上的节点,再给客户端回复发送确认响应。这样当某个 Broker 宕机时,其他的 Broker 可以替代宕机的 Broker,也不会发生消息丢失。
3、消费阶段
消费阶段采用和生产阶段类似的确认机制来保证消息的可靠传递,客户端从 Broker 拉取消息后,执行用户的消费业务逻辑,成功后,才会给 Broker 发送消费确认响应。如果 Broker 没有收到消费确认响应,下次拉消息的时候还会返回同一条消息,确保消息不会在网络传输过程中丢失,也不会因为客户端在执行消费逻辑中出错导致丢失。你在编写消费代码时需要注意的是,不要在收到消息后就立即发送消费确认,而是应该在执行完所有消费业务逻辑之后,再发送消费确认。
天天快讯:MQ——如何保证消息不会丢失
144MB缓存游戏神U!AMD锐龙7000X3D定档:情人节大礼
【当前热闻】美国所有航班都已停飞 电脑系统竟突发故障:官方给出恢复时间
速看:偶数位(熟悉二进制)
当前信息:Mysql页分裂
焦点关注:日系首款电动B级轿车!本田雅阁插混版来了:可挂绿牌
广州一宝马SUV冲撞人群 官方通报:已致5死13伤 司机被控制
环球即时:太阳4天内发出两次X级耀斑:几天后指向地球、或引强烈地磁暴
世界视点!02-Sed语法介绍
每日聚焦:真我GT Neo5标准版曝光:不到200g机身塞进5000mAh和骁龙8+
天天微头条丨I Do钻戒母公司被申请破产:被年轻人摒弃 太不保值 有人1.8万买只值180元
新款魏牌拿铁DHT-PHEV亮相惹争议 网友吐槽:不能我一个人瞎
CQOI2007,洛谷P4710涂色
头条焦点:小米最好高端口碑!雷军:MIX Fold 2研发成本很高 屏幕是天价定制
奢侈服装品牌Acne新春广告片被批 网友称其“阴间兔”
男童放鞭炮炸飞井盖连砸两车 科普:炮仗遇上下水道堪比小炸弹
【环球播资讯】男子吐槽APP看天气预报要点8个广告 网友:手机自带的不好吗?
世界快看点丨雅迪参展CES:汽车级快充亮相 20分钟充满80%电池
全球快看点丨链表栈队列递归哈希表有序表
Codeforces 1278 F Cards 增强版 题解 (斯特林数,推式子)
热点在线丨sortablejs 列表拖拽排序,js vue2,解决拖拽排序乱序问题
世界快资讯:用低代码这把“剑”之前,要先看定位,各取所需
当前短讯!开源动物行为分析实验箱(斯金纳箱)研发总结
三星Galaxy S24系列或取消Plus版本:销量太惨淡
【天天时快讯】大碗更尽兴!海福盛香辣牛肉面大促:每桶到手3块钱
今日视点:特斯拉2022年中国销量44万辆 还不敌比亚迪一个宋
《咬文嚼字》公布年度十大语文差错:连花清瘟?莲花清瘟?
世界观焦点:荣耀二代骁龙8新机来了!Magic 5系列入网:春节后发布
环球观速讯丨python之路 58 linux文件配置相关
学习笔记——MyBatis自动映射与自定义映射;Mybatis延迟加载
当前关注:C#、TS和Dart对比1:概述
即时焦点:SpringBoot Xss漏洞修复
软件开发入门教程网之Git 基本操作
热门:别克GL8危险!腾势D9累计订单超5万:50%用户来自BBA
3岁男童反复呕吐被确诊癌症晚期:被称为儿童癌症之王
当前速读:《咬文嚼字》公布2022年度十大语文差错:天和核心舱、莘莘学子上榜
努比亚Z50限定版明天首销:搭载最纯净的定制系统 无广告
环球观点:操作系统
环球播报:C++构造函数【cherno课程学习】
手机端H5 实现自定义拍照界面
今日热议:2022年我国人均存款近1.3万元 网友:又拖后腿了
【报资讯】一家四口在三亚溺水全部遇难:官方科普“离暗流”危险性
天天微动态丨2022收官!合资车时代被终结 “迪王”养成 大票车企失去肥年
【环球速看料】《小美人鱼》真人电影周边童书曝光 黑美人鱼好可爱
天天即时:双形态不入耳!讯飞开放式办公耳机iFLYBUDS Air图赏
小米MIX Fold 2厚度与戴壳iPhone 14 Pro Max相当 雷军:惊艳
当前通讯!3秒复制任何人的嗓音!微软音频版DALL·E细思极恐 连环境背景音也能模仿
每日热议!官宣:Intel发烧U回来了!350W 56核能打过AMD 280W 64核吗?
每日播报!人气爆棚!上美回应《中国奇谭》周边断货:已开足马力生产
Shell 命令奇淫技巧,就是有点短
当前头条:你买过哪些?苹果已售出23.2亿部手机 国人最爱iPhone 6
每日速递:美国加州风暴天气已致17死 有大树直接被连根拔起
环球速看:取消灵动岛!苹果iPhone 16 Pro将配备屏下Face ID
春运咋办?博主跑1千公里高速实测充电桩:有服务区一半都是坏的
【时快讯】《中国奇谭》口碑封神!仅上线三集 播放量突破5000万
【世界聚看点】CPU、显卡持续涨价!全球PC出货量暴跌 联想继续第一
简讯:(五)elasticsearch 源码之查询流程分析
环球热文:消息服务 + Serverless 函数计算如何助力企业降本提效?
世界滚动:el-table更新数据页面闪烁问题
全球今日报丨DJI这三个字母 是怎么占领你的背包的
环球热头条丨告别毛巾“一条恒久远”!金号纯棉抑菌毛巾大促:一条5块钱
今日快讯:哪吒汽车联手宁德时代共研“滑板底盘”:电池、底盘合体
世界信息:苹果加大降低中国工厂依赖程度:都要搬走?印度成香饽饽 出口激增
独占4K AMR 120帧高规格!《流浪地球2》发布CINITY海报
世界热点!指针知识点总结
每日热讯!TiDB 底层存储结构 LSM 树原理介绍
linux基础:2、前期必备知识、系统运行命令、快捷方式命令、目录结构相关命令、文件与文件夹相关命令、目录结构
环球今日报丨C# 循环给多个连续编号的控件赋值
网上银行怎么转账?网上银行转账限额是多少?
诺基亚5800xm当年多少钱?诺基亚5800XM手机参数
投影仪吊架怎么安装?吊式投影仪安装方法
华为gt2怎么设置相册表盘?华为gt2有血氧功能吗?
唐门鸟翔碧空在哪里学?唐门鸟翔碧空可以放什么技能?
雷龙鱼水温多少合适?雷龙吃什么饲料?
最新消息:三星Galaxy S23系列定档:2月2日登场 首发新版骁龙8 Gen2
《满江红》公布秦桧版预告:饰演者雷佳音狠辣狡诈
【全球新要闻】特斯拉大降价 其它车企跟不跟?乘联会秘书长发声
焦点速读:万物有灵 被收养流浪狗跳车拦住怀孕主人 下一秒山路塌方
每日聚焦:1208元!中国探月航天推出限量火箭碎片:运送嫦娥四号的长三乙
加减乘除是谁发明的?加减乘除混合运算100道
米亲韩语是什么意思?韩语shake it是什么意思?
全高清和超高清有什么区别?全高清和超高清4K哪个更护眼?
异丙醇的作用与用途有哪些?异丙醇和酒精的区别是什么?
Serverless 奇点已来,下一个十年将驶向何方?
每日热点:没电、没网也能支付 数字人民币全新功能上线:安卓先行
环球微资讯!用上比亚迪发动机 斯威大虎ED-i增程版亮相:油耗低至2.06升
关注:公司就给员工加薪50元致歉 已尽力对不起大家引热议:为何不知足?
Win7彻底停服 国产OS统信站出来了:打印机、软件轻松迁移
读编程与类型系统笔记04_类型安全
微动态丨【QtJson】用Qt自带的QJson,直接一步到位封装和解析一个类的实例对象!
还买iPhone 14/15?新iPhone准备中:苹果弃灵动岛 更完美
人民日报评电视收费乱象:从用户身上“薅羊毛” 广告还见缝插针
微头条丨今年首场寒潮来袭 最强雨雪下在哪?这些地区将迎暴雨、暴雪
天天滚动:2022年 我把比亚迪DM-i插混当纯电动车 开了1万公里
《王者荣耀》星会员正式上线:全新充值体系 打破贵10等级限制
当前速讯:神舟新款游戏本上架:13代i5+满血RTX 3050 4999元
最强高端!小米13 Ultra有望下月发:终于告别USB 3.0
动态:家长炮轰《中国奇谭》烂 吓哭孩子引热议:专家回应 给成年人看
环球观焦点:贾跃亭又摊上事了:法拉第未来接到纳斯达克摘牌警告
全球报道:JavaScript 扁平与树形数组数据的转换