互联网是如何把“原始人”逼成“机器人”(3)

简介: 互联网是如何把“原始人”逼成“机器人”(3)

微服务架构提倡将单一应用程序划分成一组小的服务,服务之间通过RPC方式互相协调、互相配合,形成分布式调用,横向扩充服务的数量来提高整体的QPS量。然而在简单业务场景下并没有任何问题,当业务场景复杂的时候就会出现A->B->C->D->E->F->G->H->I->J…N,会导致服务整体不稳定,稍微修改下业务逻辑影响一整条链路。或者上游需要同时通知多个下游的时候微服务的架构就会显得单薄乏力,所以需要使用MQ来缩短整个调用链或者解耦同步通知多个下游的场景。例如用户注册流程,在未使用MQ的时候,下游需要关注用户注册信息的时候,只有通知上游去调用接口。但是使用MQ后,上游只需要发送MQ即可,下游订阅MQ消费消息并处理,同时上游并不会关注下游的个数,最终整体的调用链缩短了,性能也有较大的提升。


image.png


每逢大促活动的时候,如何快速触达用户?之前的做法是先查询用户注册表,然后批量写入待发消息中心,消息中心收到请求后快速写入DB中,然后通过定时任务来扫描并调用短信、PUSH接口。但是通过MQ可以大大提高系统的QPS


三、MQ的选型

目前业内比较主流的 MQ 包括 RocketMQActiveMQRabbitMQKafka等,关于性能、存储、社区活跃度等各方面的技术对比都相差不大,但我们发现通过简单的选型对比,很难抉择到底选择哪款MQ产品。因为金融行业对于数据一致性以及服务可用性的要求非常高,所以任何关于技术的选项都显得尤为重要。在做技术选型的时候,我们重点关注如下:


image.png


另外,在微服务中分布式事务是一个经典话题,如何简单、高效的完成分布式事务对于架构者来说非常重要,在众多的MQ中我们最终选定了商用版的RocketMQ,对于分布式事务也能非常好的支持。


image.png


经过几次的重构后微服务中存在的问题也逐步消除,随着MQ的加入系统的TPS又有了较大的提升,同时通过本地缓存和远程缓存相结合的方式来高效实用缓存。对于非核心流程的RPC接口也梳理了降级和熔断的流程,目前稳定性提升的非常多。新版的微服务架构如下:


image.png


平台架构没有终点、优化没有终点,单体应用有单体应用的优势和亮点,分布式系统有分布式系统的不足,每一家互联网企业所面临的阶段不一样,所以做法也不一样。但是不要为了追求技术而使用技术,够用就好、解决问题就好。


四、总结

构建复杂的应用真的是非常困难,单体式的架构更适合轻量级的简单应用。如果你用它来开发复杂应用,那真的会很糟糕。微服务架构模式可以用来构建复杂应用,当然,这种架构模型也有自己的缺点和挑战。微服务实施过程中由于会引入各种中间件,所以会出现各种各样异常信息,对于开发人员和架构师来说都是一种挑战。目前“云”是趋势所在,如果条件允许的话,建议所有的中间件全部使用“云”上的产品稳定性有保障、降低了维护成本。最后如果能真正成功实施微服务,无非是合理的组织架构、对于项目的认可、工具的合理化、持续集成过程。


往期推荐


相关实践学习
RocketMQ一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
3月前
|
机器学习/深度学习 人工智能 自动驾驶
移动能源互联网创新论坛成功举办 蚕丛机器人闪耀问世
蚕丛机器人创始人、CEO唐锐宣布纵目科技全新子公司——蚕丛机器人正式问世,并正式推出其重磅新产品——FlashBot闪电宝。这充分展示了纵目科技突破自我、不断追求从0到1创新的破局精神和自我革新能力,以硬核科技产品彰显了其业内领先的强大研发创新实力,标志着纵目科技全新的自动驾驶和能源机器人双轮驱动战略正式全面启航。与此同时,蚕丛机器人与电管家集团签订了长期战略合作协议,并与法国恒通集团、法国光芒公司分别线上签订了战略合作意向书,展示了其强大的吸引力和巨大的商业前景。
|
存储 人工智能 运维
互联网企业助力北京冬奥会:阿里云后端保障,百度AI抢镜,猎豹机器人火到外网……
互联网企业助力北京冬奥会:阿里云后端保障,百度AI抢镜,猎豹机器人火到外网……
420 0
互联网企业助力北京冬奥会:阿里云后端保障,百度AI抢镜,猎豹机器人火到外网……
|
机器人 数据库
互联网是如何把“原始人”逼成“机器人”(2)
互联网是如何把“原始人”逼成“机器人”(2)
103 0
互联网是如何把“原始人”逼成“机器人”(2)
|
缓存 Dubbo Java
互联网是如何把“原始人”逼成“机器人”(1)
互联网是如何把“原始人”逼成“机器人”(1)
互联网是如何把“原始人”逼成“机器人”(1)
|
人工智能 机器人 vr&ar
消失的中国互联网元老陈天桥:为神经科学捐助10亿,不担心机器人崛起
即使你没听说过“盛大游戏”,也一定听说过“传奇”。把风靡一时的网游“传奇”引入中国的陈天桥,是国内网游界当之无愧的元老,马化腾也表示曾将他作为学习的对象。
1107 0
|
2月前
|
传感器 人工智能 监控
智能耕耘机器人
智能耕耘机器人
43 3
|
6月前
|
人工智能 自然语言处理 机器人
智能电话机器人核心技术:自然语言处理
什么是自然语言处理? 自然语言处理是计算机科学领域与人工智能领域中的一个重要方向.它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法.自然语言处理是一门融语言学、计算机科学、数学于一体的科学.因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系,但又有重要的区别. 自然语言处理并不是一般地研究自然语言,而在于研制能有效地实现自然语言通信的计算机系统,特别是其中的软件系统.因而它是计算机科学的一部分. 自然语言处理(NLP)是计算机科学,人工智能,语言学关注计算机和人类(自然)语言之间的相互作用的领域.
|
1月前
|
传感器 人工智能 自然语言处理
智能咖啡厅助手:人形机器人 +融合大模型,行为驱动的智能咖啡厅机器人
智能咖啡厅助手:人形机器人 +融合大模型,行为驱动的智能咖啡厅机器人
智能咖啡厅助手:人形机器人 +融合大模型,行为驱动的智能咖啡厅机器人
|
2月前
|
传感器 机器学习/深度学习 算法
植保机器人具备智能感知与决策能力
植保机器人具备智能感知与决策能力
19 2

热门文章

最新文章