- RocketMQ实战与原理解析
- 杨开元
- 328字
- 2023-07-26 11:54:53
1.2 RocketMQ简介
阿里的消息中间件有很长的历史,从2007年的Notify到2010年的Napoli, 2011年升级后改为MetaQ,然后到2012年开始做RocketMQ, RocketMQ使用Java语言开发,于2016年开源。第一代的Notify主要使用了推模型,解决了事务消息;第二代的MetaQ主要使用了拉模型,解决了顺序消息和海量堆积的问题。RocketMQ基于长轮询的拉取方式,兼有两者的优点。
每一次产品迭代,都吸取了之前的经验教训,目前RocketMQ已经成为Apache顶级项目。在阿里内部,RocketMQ很好地服务了集团大大小小上千个应用,在每年的双十一当天,更有不可思议的万亿级消息通过RocketMQ流转(在2017年的双十一当天,整个阿里巴巴集团通过RocketMQ流转的线上消息达到了万亿级,峰值TPS达到5600万),在阿里大中台策略上发挥着举足轻重的作用。
此外,RocketMQ是使用Java语言开发的,比起Kafka的Scala语言和RabbitMQ的Erlang语言,更容易找到技术人员进行定制开发。