RocketMQ 应用场景

1、异步解耦

场景描述

作为淘宝/天猫主站最核心的交易系统,每笔交易订单数据的产生会引起几百个下游业务系统的关注,包括物流、购物车、积分、阿里妈妈、流计算分析等等,整体业务系统庞大而且复杂,架构设计稍有不合理,将直接影响主站业务的连续性;

高可用松耦合架构设计

通过上、下游业务系统的松耦合设计,即便下游子系统(如物流、积分等)出现不可用甚至宕机,都不会影响到核心交易系统的正常运转;

灵活适应业务的快速增长

商场如战场,通过 MQ 的异步化设计,可以灵活高效的适应因业务快速发展而带来的变化,如新增业务系统;

2、削峰填谷

场景描述

诸如秒杀、抢红包、企业开门红等大型活动时皆会带来较高的流量脉冲,或因没做相应的保护而导致系统超负荷甚至崩溃,或因限制太过导致请求大量失败而影响用户体验,削峰填谷是解决该问题的最佳方式;

超高流量脉冲处理能力

MQ 超高性能的消息处理能力可以承接流量脉冲而不被击垮,在确保系统可用性同时,因快速有效的请求响应而提升用户的体验;

海量消息堆积能力

确保下游业务在安全水位内平滑稳定的运行,避免超高流量的冲击;

合理的成本控制

通过削弱填谷可控制下游业务系统的集群规模,从而降低投入成本;

3、顺序消息

场景描述

细数日常中需要保证顺序的应用场景非常多,比如证券交易过程时间优先原则,交易系统中的订单创建、支付、退款等流程,航班中的旅客登机消息处理等等。与FIFO原理类似,MQ提供的顺序消息即保证消息的先进先出;

严格保序

与部分开源产品不同,无论是服务上下线、扩缩容,网络不稳定等情况下,MQ 始终保证消息的有序;

高性能&可扩展

支持全局顺序与分区顺序,分别满足不同的业务需求,如证券交易系统中相同股别采用全局顺序,交易系统的不同订单之间采用分区顺序;分区顺序在严格保序的同时,通过分区动态扩展能力提高整体的并发与扩展能力;

4、分布式事务消息

场景描述

阿里巴巴的交易系统、支付红包等场景需要确保数据的最终一致性,大量引入 MQ 的分布式事务,既可以实现系统之间的解耦,又可以保证最终的数据一致性;

传统事务

多个系统或者应用组件之间的业务处理会耦合到一个大事务中,响应时间长,业务链路长从而影响系统的整体性能和可用性,甚至引起系统崩溃;

分布式事务

将核心链路业务与可异步化处理的分支链路进行拆分,将大事务拆分成小事务,减少系统间的交互,既高效又可靠;MQ 的可靠传输与多副本技术在确保消息不丢,At-Least-Once 特性确保数据的最终一致性;

5、大数据分析

场景描述

数据在"流动"中产生价值,传统数据分析大多是基于批量计算模型,而无法做到实时的数据分析,利用阿里云消息队列(MQ)与流式计算引擎相结合,可以很方便的实现将业务数据进行实时分析。

应用与分析解耦

构建应用系统和分析系统的桥梁,并将它们之间的关联解耦,同时由于数据产生非常快且数据量大,需要非常高的可扩展性;

大数据分析

可对接 Storm/Spark 实时流计算引擎,亦可对接 Hadoop/ODPS 等离线数据仓库系统;

6、分布式模缓存同步

场景描述

天猫双11大促,各个分会场琳琅满目的商品需要实时感知价格变化,大量并发访问数据库导致会场页面响应时间长,集中式缓存因为带宽瓶颈限制商品变更的访问流量,通过 MQ 构建分布式缓存,实时通知商品数据的变化;

实时数据更新

通过消息实时推送的方式,让数据实时得以更新;

降低页面响应时间

大量并发访问商品数据库,减少页面响应时间;

满足大规模访问需求

大促众多分会场,多缓存的架构设计,满足对商品变更的大量访问需求;

你可能感兴趣的:(java)