安庆大理运城常德铜陵江西
投稿投诉
江西南阳
嘉兴昆明
铜陵滨州
广东西昌
常德梅州
兰州阳江
运城金华
广西萍乡
大理重庆
诸暨泉州
安庆南充
武汉辽宁

RabbitMQ初步到精通消息中间件介绍

6月14日 逆落雪投稿
  第一章消息中间件介绍
  1。MQ概述
  MQ全称是MessageQueue,消息的队列,因为是队列,所以遵循FIFO先进先出的原则,它是一种跨进程的通信机制,用于上下游传递消息。
  在互联网架构中,MQ是一种非常常见的上下游逻辑解耦物理解耦的消息通信服务。
  消息队列中间件是分布式系统中重要的组件,主要解决应用耦合,异步消息,流量削峰等问题实现高性能,高可用,可伸缩和最终一致性架构;
  使用较多的消息队列有ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ等。
  例如下图所示:
  原Client1是与Client2直接交互的,
  升级后的架构中间加入MQ后,Client1将消息直接发送到MQ,MQ接收成功后便直接返回给Client1成功状态,Client1可以再去处理其他消息。
  这时候MQ就成为了一个中转站,MQ接收到消息后可以通过推的方式,推送给订阅自己的Client2,也可以通过Client2主动拉取的方式,获取到Msg消息,进行处理。
  处理完成后给MQ一个ACK通知,此消息就会从MQ中删除掉。
  2。为什么使用MQ
  既然有这样的中间件产品,那必然会有他的用武之地。一般大家会从异步处理,应用解耦,流量削峰这些维度去分别举例介绍。本文举一个例子来涵盖这些内容。
  2。1举个栗子:
  如上图,这是一个实际的支付系统中的一个场景,用户通过支付服务扣款100,首先会调用一次账户服务扣除用户余额100,(此步骤交互图中已省略),扣款成功后,立马会返回给用户支付成功的状态,但程序还会去处理扣款后的剩余事项,例如给商户上账、调用风控事后监控、发消息给用户、调用结算服务记录清分流水等等。
  如果我们使用上图中的系统交互,首先调用账户、再调风控、调结算、调消息最后返回给用户支付成功。
  会存在什么问题?系统严重耦合这几个系统中存在关联关系,且执行也有先后顺序,任何一个系统的变化都有可能导致整条链路出现问题,如果再新加一个库存服务呢,又会对整体产生影响。调用时间太长用户支付动作,在用户侧关注的是什么?是有没有支付成功,即用户的钱被扣了就可以告诉用户支付成功,至于后面的一系列动作,跟用户不再产生关系,用户也不必关注。等全部执行完,再告诉用户执行时长可想而知并发能力太弱在业务系统开展活动时,需要一个高并发的系统支撑,我们无法迅速去提升,因为整体的并发能力完全依赖与所有的服务,而有的服务可能并发性就不是很好,或提升很慢,例如账户服务〔核心诉求是记对账〕,这样整体的并发无法保证。
  2。2优化栗子
  经过优化,我们中间引入MQ中间件,实现了异步化,支付服务不再和后面的任何服务进行耦合关联,只关注于消息的投递。消息投递成功后,即返回给前端用户支付成功。
  带来的变化:
  1。系统解耦系统间不耦合,任何系统的变化不对整体链路产生影响
  2。异步提速支付动作整体的耗时花费在了用户与支付服务交互,后面的执行时间不再累计到整体链路中
  3。流量削峰针对用户高并发的场景只要优化支付服务即可,而后续的服务无法承载如此高的并发,这时候MQ便起到一个中转暂存的作用,产生了一个削峰的作用。既提高了用户的并发能力,又保护了后端相应的低并发服务。
  当然,还有一些其他的场景中都是会存在MQ的身影,不再一一列举了,但凡在使用过程中我们遇到一些想使用异步的场景,都可以考虑是否可以引入MQ。3。MQ使用缺点
  凡事有利就有弊,事物都有两面性。再看下引入MQ后的系统缺点:系统可用性降低系统引入的外部依赖越多,越容易挂掉。本来A系统调用BCD三个系统的接口就好了,ABCD四个系统好好的,没啥问题。硬加个MQ,MQ挂了,整套系统就崩溃了,风险很大。因此,系统可用性降低。系统复杂性增加要多考虑很多方面的问题,如何处理消息丢失的情况?如何保证消息传递的顺序性?如何保证消息没有重复消费?数据一致性问题A系统处理完了直接返回成功了,人都以为这个请求就成功了;但要是BCD三个系统那里,BD两个系统写库成功了,结果C系统写库失败了,这数据就不一致了。所以消息队列实际是一种非常复杂的架构,引入它有很多好处,但是也得针对它带来的坏处做各种额外的技术方案和架构来规避掉,系统复杂度提升了一个数量级,也许是复杂了10倍。
  但这些缺点也可以通过一些手段去克服,总归引入MQ还是利大于弊的,要设计好整体的方案。4。常见MQ对比
投诉 评论 转载

在希望的田野上又到蜜柚飘香时果农丰收采摘忙央视网消息:眼下到了江西蜜柚成熟丰收的时节,江西吉安市万安县的井冈蜜柚进入了采摘期,一起去成熟的蜜柚基地看一看。在万安县高陂镇泗源村的一个蜜柚基地,绿油油的蜜柚树上挂满了……RabbitMQ初步到精通消息中间件介绍第一章消息中间件介绍1。MQ概述MQ全称是MessageQueue,消息的队列,因为是队列,所以遵循FIFO先进先出的原则,它是一种跨进程的通信机制,用于上下游传递……赛季报销!绿军迎来噩耗,打勇士的法宝没有了要说上赛季表现最令人惊艳的队伍,那绝对非绿军莫属了!他们在上半个赛季一直徘徊东部第8、第9的情况下,下半个赛季迎来了大爆发,排名一路上升,直接杀到了东部第2位,更是在季后赛中接……1963年出生的人,按最低档次缴纳社保,明年退休可领多少养老自己是1963年出生的人,养老保险都是按照最低缴费档次来交纳社保,也就是60,但实际上在这个社保缴费指数全国统一以前有个别地区,最低缴费指数仅仅只有40,比如说像北京四川就曾经……特斯拉或关闭购物中心展厅,开创者为何率先逃离?新能源汽车品牌的商超之战有多卷?相信已无需马拉车市多言,毕竟从我们身边的商圈就能最直观地感受到。就拿成都老字号的购物中心锦华万达为例,就有十多家新能源汽车品牌展厅,分布在……每天阳光明媚,却是光的智慧在灿烂,我们却浑然不知你了解光吗,你知道光的智慧吗?我们每天奔忙不息,你知道光存在的意义吗?光每日存在,与我何干?是的,光的确太普通,我们习惯了视而不见。但光确实是一种普通却又神奇的东西……年度妖股终于摘帽了,众泰汽车能否打好翻身仗?摘要近年来众泰汽车经营惨淡,连年的巨亏更是让其走到几近破产的边缘,虽然一度也被st,不过市场仍对众泰汽车抱有期待,而自11月份以来,摘帽定增再,叠加电池技术赶超宁德时代的……郭艾伦新女友曝光颜值学历超高,父亲身家达150亿,2人同赴海最近一段时间,国内篮坛最受球迷关注的热点,无疑就是辽宁男篮的全明星后卫赵继伟在海南迎娶新娘举办的盛大婚礼了。由于赵继伟的人缘极佳,辽篮和很多CBA球队的球员和教练都到场参……刘诗诗最新硬照引吐槽,撞脸多位女星,胸前两团纱布太败笔对于内娱女星而言,除了比拼影视资源,就是内卷时尚地位。近日,85花女星刘诗诗放出一组礼服硬照,却迎来网友的各种吐槽声,直言她丧失个人特色。如今刘诗诗正在忙于新戏拍摄,本人……小米air13翻转本i51230U16G512G2。8Kol我这个人不会以单独的某项跑分作为评判机器的标准它虽然跑分弱,但是完全静音,8瓦的处理器,简单办公实际上也够只不过你处理一些比较大的表格和文档,就力不从心了其次……再获金奖!国产OS麒麟软件闪耀第十届中国电子信息博览会8月1618日,第十届中国电子信息博览会(CITE2022)在深圳举办,麒麟软件参加并在多个环节高光亮相。期间,麒麟软件产品上榜十大金奖,深海事业部总经理吉高建出席主题峰会并发……MVP!皇马新星炸裂表演马赛回旋,统治全场,8000万值了西甲第4轮的榜首大战,皇马21战胜贝蒂斯。4连胜的皇马,独居西甲积分榜第1。韦尼修斯、罗德里戈为皇马建功,但皇马最出彩的球员是谁?如果看了90分钟,你会明确给出答案:琼阿梅尼。……
余承东会颠覆汽车行业的营销模式吗?索尼IMX766传感器成为旗舰机标配,为什么它如此受欢迎?进入四川西藏的寺庙,教你如何认识藏传佛教的符号,全揭秘沈梦辰婚后首露面,当场被要喜糖心情好,素颜难掩心中兴奋浅谈宇宙四大自然力之什么是引力延庆生活看变化,窗外荒滩变绿洲乡居民宿迎客来影视圈大咖,抛弃妻子女儿,只为徐静蕾,结局还是孤身一人颜值在线,续航超600km!荣威这台落地15万的家轿值得一看首钢被绝杀揪出三大罪人,秦晓雯可能下课,李春江观战脸色凝重睿行者探索集结令小糊涂仙ampampamp中国国家地理邀您共今天天气晴朗,去废品收购站去捡点漏,略有收获,没有白跑京东负重前行,为何跑赢世界500强?云闪付一分钱坐公交怎么弄?垫上造句用垫上造句大全世界遗产之印度篇个要求女方返还彩礼诉讼期三年的相关规定是怎样桂鱼生长在什么水域,水深多少合适华中科技大学自主招生简章有什么内容夫妻之间,四条红线不能够越论经济法的分析框架及定位旅行的时间和钱从哪来72岁宋春丽亲身示范衣穿简,裤选长,发要短,太优雅气质秋季西装穿出OL气质感游博物馆有门道?文博专家谈如何带青少年观展

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找七猫云易事利