- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
四Java面试突击专题
消息队列篇
===图灵:楼兰===
一、MQ有什么用?有哪些具体的使用场景?
MQ:MessageQueue,消息队列。队列是一种FIFO先进先出的数据结构。消息
由生产者发送到MQ进行排队,然后由消费者对消息进行处理。QQ、就是典
型的MQ场景。
MQ的作用主要有三个方面:
1、异步:
例子:快递。快递员-菜鸟驿站-客户
作用:异步能提高系统的响应速度和吞吐量。
2、解耦:
例子:《Thinkinginjava》-编辑社
作用:服务之间进行解耦,可以减少服务之间的影响,提高系统的稳定性和可扩展
性。
另外,解耦可以实现数据分发。生产者发送一个消息后,可以由多个消费者来
处理。
3、削峰:
例子:长江涨水-三峡大坝
作用:以稳定的系统资源应对的流量冲击。
MQ的缺点:
1、系统可用性降低:一旦MQ宕机,整个业务就会产生影响。高可用
2、系统的复杂度提高:引入MQ,数据链路就会变得很复杂。如何保证消息不
丢失?消息不会重复调用?怎么保证消息的顺序性?、、、、、
3、数据一致性:A系统发消息,需要由B、C两个系统一同处理。如果B系统处理成
功、C系统处理失败,这就会造成数据一致性的问题。
二、如何进行产品选型?
Kafka
优点:吞吐量非常大,性能非常好,集群高可用。
缺点:会丢数据,功能比较单一。
使用场景:日志分析、大数据
RabbitMQ
优点:消息可靠,功能全面。
缺点:吞吐量比较低,消息积累会严重影响性能。erlang语言不好定制。
使用场景:小规模场景。
MQ
优点:高吞吐、高性能、高可用,功能非常全面。
缺点:开源版功能不如云上商业版。文档和周边生态还不够成熟。客户端只支
持java。
使用场景:几乎是全场景。
三、如何保证消息不丢失?
1、哪些环节会造成消息丢失?
2、怎么去防止消息丢失。
2.1生产者发送消息不丢失
kafka:消息发送+回调
MQ:1、消息发送+回调。2、事务消息。
RabbitMQ:1、消息发送+回调
2、手动事务:channel.txSelect()开启事务,channel.txCommit()提交事务,
channel.txRollback()回滚事务。这种方式对channel是会产生阻塞的,造成吞吐量
下降。
3、PublisherConfirm。整个处理流程跟MQ的事务消息,基本是一样
的。
2.2MQ主从消息同步不丢失
MQ:1、普通集群中,同步同步、异步同步。异步同步效率更高,但是有
丢消息的风险。同步同步就不会丢消息。
2、Dledger集群-两阶段提交:
RabbitMQ:普通集群:消息是分散的,节点之间不会主动进行消息同步,是
有可能丢失消息的。
镜像集群:镜像集群会在节点之间主动进行数据同步,这样数据安全性得到提
高。
Kafka:通常都是用在允许消息少量丢失的场景。acks。0,1,all
2.3MQ消息存盘不丢失
MQ:同步刷盘异步刷盘:异步刷盘效率更高,但是有可能丢消息。同步刷
盘消息安全性更高,但是效率会降低。
RabbitMQ:将队列配置成持久化队列。新增的Quorum类型的队列,会采用Raft
协议来进行消息同步。
2.4MQ消费者消费消息不丢失
MQ:使用默认的方式消费就行,不要采用异步方式。
RabbitMQ:autoCommit-手动提交offset
Kafka:手动提交offset
四、如何保证消息消费的幂等性?
其实就是要方式消费者重复消费消息的问题。
所有MQ产品并没有主动解决幂等性的机制,需要由消费者自行控制。
MQ:给每个消息分配了个MessageID。这个MessageID就可以作为消费
者判断幂等的依据。这种方式不太建议。
方式就是自己带一个有业务标识的ID,来进行幂等判断。OrderID
统一ID分配。
五、如何保证消息的顺序?
全局有序和局部有序:MQ只需要保证局部有序,不需要保证全局有序。
生产者把一组有序的消息放到同一个队列当
您可能关注的文档
- 固收点评:卓镁转债,镁合金精密压铸领域的先行者-251107-东吴证券.pdf
- 电子行业:华虹三季报创新高,半导体景气向上动能强劲-251110-平安证券.pdf
- 非白酒行业专题报告:烈酒消费存在长期结构性机会,国内威士忌市场有望快速成长-251111-方正证券.pdf
- 对等关税最高法辩论点评:败诉概率不低,退款或成短期财政刺激-251106-国联民生证券.pdf
- 宏观经济深度报告:全景式扫描AI对美国经济的影响-251112-国金证券.pdf
- 货币政策加码宽松可期,保障金融市场稳健运行-251113-中邮证券.pdf
- 公用事业行业—电力天然气周报:省级电力现货全面覆盖,LNG最高气化服务费确定为0.20元/方-251108-信达证券.pdf
- 悍高集团(001221)深耕家居五金,产品矩阵完善%2b多元化销售体系%2b智能制造优势显著-251110-国盛证券.pdf
- 国债期货分析框架一:从定价机制到交易策略-251110-东北证券.pdf
- 复锐医疗科技(1696.HK)Q3收益双位数增长,关注达希斐上市进展-251107-华西证券.pdf
- 固收专题报告:信用|哪些担保债值得关注?-251106-财通证券.pdf
- 合合信息(688615)用户为王、产品至上,智能文字识别与商业大数据龙头开启成长新篇章-251110-中信建投.pdf
- 纺服轻工教育行业:出口优先,内需蓄力-251111-中信建投.pdf
- 电子行业2026年度投资策略报告:云侧AI趋势正盛,端侧AI方兴未艾-251109-中信建投.pdf
- 电子行业25年三季报总结:行业分化显著,AI与科技自立双主线清晰-251111-银河证券.pdf
- 纺服轻工及教育行业25W45:芬太尼关税调降11月10日生效,LVMH、开云Q3收入降幅收窄-251109-中信建投.pdf
- 固收%2b系列之四:股债恒定ETF,运作体系、海外经验借鉴与市场影响-251107-国信证券.pdf
- 房地产行业专题报告:房价的合理估值中枢怎么看?-251112-方正证券.pdf
- 固定收益点评:市场风格切换,固收%2b如何应对?-251105-国海证券.pdf
- 高频数据跟踪:供地迎季节性高峰,物价整体下行-251110-中邮证券.pdf
最近下载
- 第四版国际压力性损伤溃疡预防和治疗临床指南解读PPT课件.pptx VIP
- 低空经济数字孪生平台建设方案.ppt VIP
- RockwellAutomation罗克韦尔搭载 TotalFORCE 控制技术的 PowerFlex 变频器用户手册说明书.pdf
- 安科瑞AMC国网中文电力仪表说明书V1.1-中文-20211025.pdf VIP
- (精)必威体育精装版个人租房合同免费下载.docx VIP
- 小学语文阅读理解万能答题公式模版 .pdf VIP
- 大班健康蔬菜沙拉PPT课件.pptx VIP
- 阅读理解答题万能公式【小学语文阅读理解答题万能公式(简单实用)】.doc VIP
- 《是谁爱着你的背影》散文阅读练习及答案(2017年柳州市中考题).doc VIP
- MPX_维保手册_簡体字(1)(1).pdf VIP
有哪些信誉好的足球投注网站
文档评论(0)