范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

为什么要使用MQ消息中间件?

  在面试大型互联网公司的时候,很可能会被问到消息队列的问题:
  1.在何种场景下使用了消息中间件?
  2.为什么要在系统里引入消息中间件?
  3.如何实现幂等?
  链式调用是我们在写程序时候的一般流程,为了完成一个整体功能,会将其拆分成多个函数(或子模块),比如模块A调用模块B,模块B调用模块C,模块C调用模块D。但在大型分布式应用中,系统间的RPC交互繁杂,一个功能背后要调用上百个接口并非不可能,这种架构有如下几个劣势:
  1、 这些接口之间耦合比较严重,每新增一个下游功能,都要对上有的相关接口进行改造;举个例子:假如系统A要发送数据给系统B和C,发送给每个系统的数据可能有差异,因此系统A对要发送给每个系统的数据进行了组装,然后逐一发送;当代码上线后,新增了一个需求:把数据也发送给D。此时就需要修改A系统,让他感知到D的存在,同时把数据处理好给D。在这个过程中你会看到,每接入一个下游系统,都要对A系统进行代码改造,开发联调的效率很低。其整体架构如下图:
  2、 面对大流量并发时,容易被冲垮。每个接口模块的吞吐能力是有限的,这个上限能力如果堤坝,当大流量(洪水)来临时,容易被冲垮。
  3、 存在性能问题。RPC接口基本上是同步调用,整体的服务性能遵循"木桶理论",即链路中最慢的那个接口。比如A调用B/C/D都是50ms,但此时B又调用了B1,花费2000ms,那么直接就拖累了整个服务性能。
  根据上述的几个问题,在设计系统时可以明确要达到的目标:
  1、 要做到系统解耦,当新的模块接进来时,可以做到代码改动最小;
  2、 设置流量缓冲池,可以让后端系统按照自身吞吐能力进行消费,不被冲垮;
  3、 强弱依赖梳理,将非关键调用链路的操作异步化,提升整体系统的吞吐能力,比如上图中A、B、C、D是让用户发起付款,然后返回付款成功提示的几个关键流程,而B1是通知付款后通知商家发货的模块,那么实质上用户对B1完成的时间容忍度比较大(比如几秒之后),可以将其异步化。
  在现在的系统视线中,MQ消息队列是普遍使用的,可以完美的解决这些问题的利器。下图是使用了MQ的简单架构图,可以看到MQ在最前端对流量进行蓄洪,下游的系统A\B\C只与MQ打交道,通过事先定义好的消息格式来解析。
  引入MQ之后的系统架构、交互方式与最初的链式调用架构非常不同,虽然可以解决上文提到的问题,但也要充分理解其原理特性来避免其带来的副作用,这里以消息队列如何保证"消息的可靠投递"为切入点,来看看MQ的实现方式。
  1. Client如何将消息可靠投递到MQ
  1.Client发送消息给MQ
  2.MQ将消息持久化后,发送Ack消息给Client,此处有可能因为网络问题导致Ack消息无法发送到Client,那么Client在等待超时后,会重传消息;
  3.Client收到Ack消息后,认为消息已经投递成功。
  2. MQ如何将消息可靠投递到Client
  1.MQ将消息push给Client(或Client来pull消息)
  2.Client得到消息并做完业务逻辑
  3.Client发送Ack消息给MQ,通知MQ删除该消息,此处有可能因为网络问题导致Ack失败,那么Client会重复消息,这里就引出消费幂等的问题;
  4.MQ将已消费的消息删除
  看完了这篇分享,不知道你对自己的Java学习是不是有了更多的感悟~

净水机就是一个坑,有同感吗?净水机不坑人,坑人的是净水机厂家。中国大部分人,根本不了解饮水机的原理,甚至认为,净水机处理过的水,有益于健康,其实,这是最恶毒的谎言。现在的净水机,之所以能去除水碱,原因就是普遍2000元内手机买哪款,准大学生求推荐?感谢您的阅读!2000元内手机买哪款,准大学生求推荐?对于即将开学的大学生来说,我觉得很多准大学生确实想要一款属于自己的手机,经历过高考之后,很多学子可能想要一部手机来奖励自己。那三星GalaxyBudsPro主动降噪真无线蓝牙耳机京东价1299元三星GalaxyBudsPro主动降噪真无线蓝牙耳机京东价1299元。三星GalaxyBudsPro的主动降噪功能可以过滤掉高达99的背景噪音。内部和外部麦克风实时监测噪音。可调控索尼耳机的缺点就是贵?性价比款其实真不少常常看到有耳机推荐的内容下面有人安利索尼的耳机,确实,索尼的耳机不论是在设计音质质量方面都做得很不错。但是也有不少朋友第一反应就是索尼大法好是好,就是贵啊。不得不承认,索尼的不少产高通宣布aptX无损蓝牙能听无损CD音质了高通日前宣布,SnapdragonSound添加aptX无损特性,用户可以通过蓝牙聆听16bit44。1kHz的音频,也就是CD音质,和不压缩音源听起来几乎无差别。高通表示,apt小dou课堂揭秘空调一晚一度电,是真的吗?从时令上来说,现在已经入秋了。但是南昌的天气一点儿也没有秋天的味道,似乎比往常更热一些。一查天气,气温32,正是盛夏时节。想来,空调WiFi西瓜的日子不得不再延续几天。这不,有一位资讯锅在供应链,特斯拉Roadster交付时间再次推迟文懂车帝原创曹浩懂车帝原创产品日前,特斯拉首席执行官埃隆马斯克在个人社交媒体上表示,下一代特斯拉Roadster将会推迟到2023年才能上市交付。而这一时间其实已经比2017年Ro新一代AppleWatch,能否测量血压体温血糖?AppleWatchAppleWatch7实物曝光华尔街日报开发中的健康功能不会被AppleWatch7采用华尔街日报1日(当地时间)援引消息人士的话报道说,苹果公司计划今后在Ap谁是真正的家庭影院空间大师?两款当红超短焦投影仪PK超短焦投影仪真正释放家庭使用活力和电视相比,智能投影仪具有屏幕大小调节更加灵活,漫反射成像更加护眼等差异化优势,特别是随着补习班的叫停,在家使用智能投影仪进行补课充电,成为越来越多阿里巴巴宣布将承办首届粤港澳大湾区购物节近日,阿里巴巴宣布将在商务部广东省等指导下于9月2日至9月22日承办首届粤港澳大湾区购物节。据介绍,这是迄今为止大湾区商家参与数量最多规模最大的一次线上活动。购物节期间,在淘宝天猫疑似三星S22S22Ultra电池通过认证大杯缩水?9月1日消息,近期有两款来自三星的锂电池组通过了国家CQC认证,这两款电池被指将被搭载于未来发布的GalaxyS22系列机型。其中,型号为EBBS906ABY的锂电池额定容量为43
科技早报B站公布百大UP主名单工信部回复丁磊统一充电接口提案记者程璐编辑B站公布百大UP主名单1月11日消息,B站公布了2021年的百大UP主名单,罗翔说刑法何同学凤凰传奇导演小策等在列。同时,B站还宣布将于1月21日晚19点举行百大UP主感慨互联网平台经济自从有了互联网平台经济起仓皇拆分返利资金盘传销直销区块链你唱罢来我登台唱词只有两个字投资,投资,投资故事讲得不一样结局都是相同的收割,收割,收割天生我材没有用机会尽在财主家共同富裕连接器大厂宏致全面停工富满微5G射频芯片已量产连接器大厂宏致全面停工1月11日,据台媒报道,台湾地区本土疫情扩大,桃园电子厂目前受到影响。连接器厂宏致爆发感染,累计5人确诊,目前该电子厂已全面停工,并将280名公司接触者全部集线上二手交易越来越火来源人民网人民日报海外版勾建山作(新华社发)近年来,随着绿色消费风尚深入人心,线上二手交易平台日渐火热。打开线上二手交易平台,既能找到二手服装图书电子产品生活用品,也能发现各种演出东软集团参与共建的计算机软件国家工程研究中心再起航本报讯(沈阳日报沈报全媒体记者刘国栋)在今年的政府报告中,沈阳提出了走创新路吃技术饭的发展思路,坚持把创新作为第一动力,全面激活产业发展与转型的强大潜能。1月11日,记者从东软集团骁龙870可以用五年吗?简单来讲用十年都可以用但是大概率不到三年你就会像换了因为能用和好用是两个完全不相干的概念如果只追求能用拿用十年都没问题只要其他硬件不出问题就行但是要想好用要想追上层出不穷的功能和a空调推荐,2022最让人有幸福感的空调来了因为拍摄的原因所以经常要在家取景,家里的一切布置都需要精心搭配,最近空调坏了,客厅买了颜值最高的海尔雷神者空调。对比了好几款,最开始看上的其实是卡萨帝的指挥者,但综合性价比最后还是奥迪开创新里程碑!达喀尔拉力赛上首次有电动车胜出据阿根廷布宜诺斯艾利斯经济新闻网报道,当奥迪宣布将带着电动车参加达喀尔拉力赛时,世界上最挑剔的比赛专家的眼睛一定瞪得比铜铃还要大,而那些了解电力技术的专家亦如此。然而,这不是因为用亚马逊BuyBox黄金购物车你了解多少?亚马逊的黄金购物车(BuyBox)为什么对于品牌电商卖家来说很重要?因为黄金购物车(BuyBox)是位于产品描述右侧的购买按钮(CTA),它帮助亚马逊买家消费者更直接地购买产品,根俞敏洪逐梦演艺圈1月8日,俞敏洪在个人公众号老俞闲话发文提到由新东方投资的影业公司去年制作了一部关于大凉山少年篮球队的励志电影。这部原本定位网络电影的影片,现在要走院线渠道,俞敏洪同时表示,未来新荣耀MagicV正式发布9999元起品玩1月10日讯,荣耀今晚举办新品发布会,正式推出新款折叠屏手机荣耀MagicV,将在1月18日正式发售。荣耀MagicV采用6。45英寸OLED单曲面外屏,支持120Hz高刷新率