MQ如何防止消息丢失
本文来说下MQ如何防止消息丢失
文章目录
- MQ消息丢失问题
- 同步的事务一停止等待
- 同步的事务一连续ARQ
- 异步的事务—回调机制
- 本文小结
MQ消息丢失问题
由于网络问题,我们很难保证生产者发送的消息能100%到达消息队列服务器,也就是说有消息丢失的可能性,因此,生产者就必须具有消息丢失检测和重发机制,也就是我们常说的消息队列的事务机制。不能把可靠性的保证全部交给TCP,TCP只保证了传输层的可靠传输,但是无法保证与应用层的交互是否出错TCP无法给应用层任何反馈,因此必须在应用层处理差错。
同步的事务一停止等待
所谓停止等待协议就是没发送完一组数据后,等待对方确认并且收到确认后,再发送下一组数据。
同步的事务一连续ARQ
类似于TCP的滑动窗口模型
异步的事务—回调机制
生产者在发送消息的时候,注册一个回调函数,这样生产者便不用停下来等待确认了,而是可以一直持续发送消息,当消息到达消息队列服务器的时候,服务器便会调用生产者注册的回调函数,告知生产者消息发送成功了还是失败了,进而做进一步的处理,从而提高了并发量。
本文小结
本文介绍了MQ防止消息丢失的几种解决方案。
MQ如何防止消息丢失相关推荐
- active mq topic消费后删除_RabbitMQ重复消费,顺序消费,消息丢失如何解决
MQ的优势 异步 解耦 削峰 不同MQ的优缺点 特性 RabbitMQ ActiveMQ RocketMQ Kafka 单机吞吐量 万级 万级 十万级 十万级 topic数量对吞吐量影响 topic达 ...
- MQ 消息丢失、重复、积压问题,如何解决?
面试官在面试候选人时,如果发现候选人的简历中写了在项目中使用了 MQ 技术(如 Kafka.RabbitMQ.RocketMQ),基本都会抛出一个问题:在使用 MQ 的时候,怎么确保消息 100% 不 ...
- Mq消息丢失解决方案
1.生产者存放消息的过程中丢失消息 解决办法: 1)事务机制:(同步方式,不推荐) 对于RabbitMQ来说,生产者发送数据之前开启RabbitMQ的事务机制 channel.txselect,如果消 ...
- MQ - 如何保证消息不丢失?处理重复消息?消息堆积处理?
什么是消息队列 在百度百科中,消息队列是这么解释的:"消息队列"是在消息的传输过程中保存消息的容器. 消息队列全称为英文 Message Queue 简称(MQ)是一种应用程序对应 ...
- RocketMQ 消息丢失场景分析及如何解决!
本文来源:https://blog.csdn.net/LO_YUN/article/details/103949317 既然在项目中使用了MQ,那么就不可避免的需要考虑消息丢失问题.在一些涉及到了金钱 ...
- RocketMQ消息丢失场景及解决办法
作者:霁云HYY 来源:https://blog.csdn.net/LO_YUN/article/details/103949317 既然在项目中使用了MQ,那么就不可避免的需要考虑消息丢失问题.在一 ...
- RocketMQ 消息丢失场景及解决办法
点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 来源 | blog.csdn.net/LO_YUN/ar ...
- Java性能优化推荐书!RocketMQ消息丢失场景及解决办法
毫不夸张的说,这份SpringBoot学习指南能解决你遇到的98%的问题 给跪了!这套万人期待的 SQL 成神之路PDF,终于开源了 既然使用在项目中使用了MQ,那么就不可避免的需要考虑消息丢失问题. ...
- 一文理清RocketMQ顺序消费、重复消费、消息丢失问题
前言 在使用消息队列时不可避免的会遇到顺序消费.重复消费.消息丢失三个问题.在一次面试字节的时候,面试官问到如何保证顺序消费,当时回答不太准确,特意此文回顾如何解决顺序消费.重复消费.消息丢失三个问题 ...
最新文章
- scala class和object,trait的区别
- MySQL原生密码认证
- flex布局怎么设置子元素大小_Chrome72 嵌套 flex 布局修改,你的网站可能会发生布局错乱...
- Asp.Net Core安全防护-客户端IP白名单限制
- LoadRunner远程监测Centos服务性能配置过程
- Cocos2d-x的Android.mk自动生成
- 谁说微服务是Spring Cloud的独角戏?Service Mesh了解一下?
- c# 如何调用非托管函数 (转)
- SqlServe中使用EXEC @sql 来传递table变量
- python做积分计算器_用Python学数学之Sympy代数符号运算
- 时间表达式java定时器_quartz定时任务时间表达式说明
- 【编译原理】简明自底向上分析算法总结:LR(0),SLR,LR(1),LALR分析算法
- Python实现Eternal Night游戏(尚未完结,不断更新)
- 学习github的网站
- flea-jersey使用之文件上传接入
- IDEA中运行maven多模块项目,提示程序包xxxx不存在
- 深度解析:电商直播基地运营及盈利模式
- 华师大 OJ 3037
- C语言编程>第一周 ③ 输入某年某月某日,判断这一天是这一年的第几天
- 软考的证书含金量高吗?
热门文章
- Android用第三方jar包ClassNotFoundException:XXX in loader dalvik.system.PathClassLoader[/app/XX.apk]...
- oracle约束的相关总结
- 干货首发,能够清理,带动画的自己定义控件CuteEditText
- Cacti设置流量阀值实现邮件报警
- SilverLight4调用WebService跨域访问问题
- Golang入门(1):安装与配置环境变量的意义
- VictoriaMetrics入门与实战
- SpringMvc 04 基于注解的映射器与适配器配置
- Linux Signal及Golang中的信号处理
- CSS分别设置Input样式(按input类型