开源技术精粹:深入解析阿里消息中间件RocketMQ

简介: 不久前,阿里宣布将开源RocketMQ 捐赠给 Apache 基金会,成为 Apache 孵化项目。想深入了解RocketMQ特性?想知道捐赠背后那些鲜为人知的故事?想看看业界主流MQ的性能对比?想知道商用版和开源版如何协同?云栖社区特别专题带你一睹详情。
早在2007年,阿里中间件团队自研消息中间件开始起步,大范围应用于生产系统,走到今天,阿里巴巴线上所有消息全部通过分布式消息中间件RocketMQ来转发投递,2016年双十一当天更是达到万亿级消息量,峰值TPS几千万,创造了国内乃至世界上最大的消息流转记录。不久前,阿里宣布将开源RocketMQ 捐赠给 Apache 基金会,成为 Apache 孵化项目。想深入了解RocketMQ特性?想知道捐赠背后那些鲜为人知的故事?想看看业界主流MQ的性能对比?想知道商用版和开源版如何协同?云栖社区特别专题带你一睹详情。(专题:https://yq.aliyun.com/topic/76 )

揭开面纱
RocketMQ是阿里在2012年开源的第三代分布式消息中间件,由阿里中间件团队维护,其商用版MQ可在阿里云上购买。历年双11,RocketMQ都承担了阿里生产系统百分之百的消息流转,在核心交易链路有着稳定和出色的表现,是承载交易峰值的核心基础产品之一。今年双11,更是创造了万亿级消息精准低延迟投递。

《RocketMQ的前世今生》 https://yq.aliyun.com/articles/66129
阿里消息中间件起源于2001年的五彩石项目,历经三个主要版本迭代,至2015年,RocketMQ经历多年双11洗礼,在可用性、可靠性以及稳定性等方面都有出色的表现。

《业界主流MQ对比 》 https://yq.aliyun.com/articles/62834
根据学习和沉淀,总结了几款业界主流消息中间件产品的对比报告,如有不准确的地方,请指正

《Kafka、RabbitMQ、RocketMQ发送小消息性能对比 》https://yq.aliyun.com/articles/62831 
分布式系统中,我们广泛运用消息中间件进行系统间的数据交换,便于异步解耦,本文对常见的三类消息产品(Kafka、RabbitMQ、RocketMQ)做了性能比较

《Kafka vs RocketMQ——Topic数量对单机性能的影响 》https://yq.aliyun.com/articles/62832 
上文对比单纯发送小消息的性能,本文模拟一个真实的场景,对比发送端、接收端共存情况下,Topic数量对Kafka、RocketMQ的性能影响

《Kafka vs RocketMQ——单机系统可靠性》https://yq.aliyun.com/articles/62833 
前几期的评测中,对比了Kafka和RocketMQ的吞吐量和稳定性,本期引入一个新的评测标准——软件可靠性

开源历程
11月28日,阿里巴巴宣布将开源分布式消息中间件RocketMQ捐赠给Apache,成为Apache 孵化项目,孵化成功后RocketMQ有望成为国内首个互联网中间件在Apache上的顶级项目,成为全球继ActiveMQ,Kafka之后,分布式消息引擎家族中的新成员。

《Apache基金会接收阿里RocketMQ为孵化项目》 https://yq.aliyun.com/articles/65031
此次捐赠,意味着以MQ(消息队列)为代表的互联网中间件在新兴物联网、大数据领域会发挥着越来越大的作用,将有更多的开发者因此受益

《阿里中间件蒋江伟(小邪)谈RocketMQ开源:感恩社区 》https://yq.aliyun.com/articles/65114
阿里巴巴中间件(Aliware)技术研究员蒋江伟(花名:小邪)和大家分享RocketMQ开源的前世今生

《Alibaba RocketMQ捐赠给Apache那些鲜为人知的故事 》https://yq.aliyun.com/articles/66135
阿里巴巴将RocketMQ捐赠给Apache只是第一步。如何将RocketMQ打造成为Apache Top Level Project,如何开源与商业化产品共赢?这里,有他们的思考。

云上生态
Aliware MQ(Message Queue)是RocketMQ的商业版本,是阿里云商用的专业消息中间件,是企业级互联网架构的核心产品,基于高可用分布式集群技术,搭建了包括发布订阅、消息轨迹、资源统计、定时(延时)、监控报警等一套完整的消息云服务。

Aliware MQ(Message Queue)是RocketMQ的商业版本,是阿里云商用的专业消息中间件,是企业级互联网架构的核心产品

《十分钟快速玩转 Aliware MQ-阿里云消息队列Demo工程实践 》https://yq.aliyun.com/articles/61965
本Demo 主要目的在于帮助初次接触 Aliware MQ 的工程师,一步一步搭建 MQ 测试工程。Demo 程序以 Java 为例,包括普通消息、事务消息、定时消息的测试代码,以及相关 Spring 的配置示例。

《Aliware MQ在移动端/物联网领域应用》 https://yq.aliyun.com/articles/66166 
当亿万级移动设备和终端接入互联网,这些海量设备终端之间如何实现相互通信成为问题,消息服务是不可或缺的环节,通过消息系统可以很好的解决设备之间的信息互通问题,针对移动端物联网等领域使用消息系统的场景,MQ通过支持标准MQTT协议的方式来满足需求。

技术实践
《RocketMQ 客户端最佳实践》 https://yq.aliyun.com/articles/66128
本文站在消费者和生产者的角度给出一些RocketMQ客户端使用的实践意见。

《RocketMQ 关键特性》 https://yq.aliyun.com/articles/66110
 Apache RocketMQ之所以能在众多的消息中间件中脱颖而出,能吸引数千企业用户与RocketMQ的关键特性是分不开的,本文详细介绍RocketMQ中的关键特性。

《十分钟入门RocketMQ》 https://yq.aliyun.com/articles/66101
本文首先引出消息中间件通常需要解决哪些问题,遇到什么困难,Apache RocketMQ作为阿里开源的一款高性能、高吞吐量的分布式消息中间件是否可以解决,如何定义问题,并介绍RocketMQ的架构设计,以期让读者快速了解RocketMQ

更多信息请进入:
企业级互联网架构Aliware官网 www.aliyun.com/aliware
相关实践学习
快速体验阿里云云消息队列RocketMQ版
本实验将带您快速体验使用云消息队列RocketMQ版Serverless系列实例进行获取接入点、创建Topic、创建订阅组、收发消息、查看消息轨迹和仪表盘。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
目录
相关文章
|
数据采集 传感器 监控
Modbus 与 MQTT 协议兼容:MyEMS 的泛在能源数据采集技术实现
MyEMS深度融合Modbus与MQTT协议,破解能源数据采集中协议碎片化、网络异构、数据孤岛等难题。通过Modbus接入95%以上工业设备,实现现场数据精准“拉取”;依托MQTT构建高效物联网传输通道,支持多源数据主动“推送”与云端集成。边缘侧采集规整,中心侧汇聚分析,形成统一、可靠、低延迟的数据流。该架构兼具高兼容性、强扩展性与低运维成本,广泛应用于工业园区、商业楼宇及集团型企业,支撑实时监控、AI分析与跨系统融合,打造泛在互联的能源数据底座,助力企业实现全面智慧能源管理。
821 6
|
缓存 监控 中间件
Django中间件自定义开发指南:从原理到实战的深度解析
Django中间件是Web应用的“交通警察”,在请求与响应过程中进行全局处理,适用于身份验证、日志记录、性能监控等功能。本文详解中间件的工作原理、开发步骤及实战案例,帮助开发者掌握自定义中间件的构建方法,提升Django应用的可维护性与扩展性。
695 0
|
SQL 大数据 数据库
RocketMQ实战—1.订单系统面临的技术挑战
本文详细分析了一个订单系统的设计与技术挑战。首先,介绍了订单系统的整体架构、业务流程及负载情况,包括电商购物流程、核心和非核心业务流程,以及真实生产中的负载压力。接着,探讨了系统面临的主要技术问题:支付后发券、发红包等操作导致性能下降;退款流程复杂且易失败;与第三方系统耦合带来的不稳定;大数据团队直接查询数据库影响性能;秒杀活动时数据库压力剧增等。最后,通过放大100倍压力的方法,梳理了高并发下的技术挑战,如核心链路优化、后台线程补偿机制、第三方系统解耦、数据获取方式改进等,为订单系统的优化提供了全面的参考。
RocketMQ实战—1.订单系统面临的技术挑战
|
消息中间件 存储 Java
吃透 RocketMQ 消息中间件,看这篇就够了!
本文详细介绍 RocketMQ 的五大要点、核心特性及应用场景,涵盖高并发业务场景下的消息中间件关键知识点。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
吃透 RocketMQ 消息中间件,看这篇就够了!
|
消息中间件 Java 数据库
新版 Seata 集成 RocketMQ事务消息,越来越 牛X 了!阿里的 Seata , yyds !
这里 借助 Seata 集成 RocketMQ 事务消息的 新功能,介绍一下一个新遇到的面试题:如果如何实现 **强弱一致性 结合**的分布式事务?
新版 Seata 集成 RocketMQ事务消息,越来越 牛X 了!阿里的 Seata , yyds !
|
消息中间件 存储 canal
阿里面试:canal+MQ,会有乱序的问题吗?
本文详细探讨了在阿里面试中常见的问题——“canal+MQ,会有乱序的问题吗?”以及如何保证RocketMQ消息有序。文章首先介绍了消息有序的基本概念,包括全局有序和局部有序,并分析了RocketMQ中实现消息有序的方法。接着,针对canal+MQ的场景,讨论了如何通过配置`canal.mq.partitionsNum`和`canal.mq.partitionHash`来保证数据同步的有序性。最后,提供了多个与MQ相关的面试题及解决方案,帮助读者更好地准备面试,提升技术水平。
阿里面试:canal+MQ,会有乱序的问题吗?
|
消息中间件 存储 Java
RocketMQ文件刷盘机制深度解析与Java模拟实现
【11月更文挑战第22天】在现代分布式系统中,消息队列(Message Queue, MQ)作为一种重要的中间件,扮演着连接不同服务、实现异步通信和消息解耦的关键角色。Apache RocketMQ作为一款高性能的分布式消息中间件,广泛应用于实时数据流处理、日志流处理等场景。为了保证消息的可靠性,RocketMQ引入了一种称为“刷盘”的机制,将消息从内存写入到磁盘中,确保消息持久化。本文将从底层原理、业务场景、概念、功能点等方面深入解析RocketMQ的文件刷盘机制,并使用Java模拟实现类似的功能。
602 3
|
消息中间件 存储 Apache
探索 RocketMQ:企业级消息中间件的选择与应用
RocketMQ 是一个高性能、高可靠、可扩展的分布式消息中间件,它是由阿里巴巴开发并贡献给 Apache 软件基金会的一个开源项目。RocketMQ 主要用于处理大规模、高吞吐量、低延迟的消息传递,它是一个轻量级的、功能强大的消息队列系统,广泛应用于金融、电商、日志系统、数据分析等领域。
1869 0
探索 RocketMQ:企业级消息中间件的选择与应用
|
设计模式 存储 安全
【23种设计模式·全精解析 | 创建型模式篇】5种创建型模式的结构概述、实现、优缺点、扩展、使用场景、源码解析
结构型模式描述如何将类或对象按某种布局组成更大的结构。它分为类结构型模式和对象结构型模式,前者采用继承机制来组织接口和类,后者釆用组合或聚合来组合对象。由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象结构型模式比类结构型模式具有更大的灵活性。 结构型模式分为以下 7 种: • 代理模式 • 适配器模式 • 装饰者模式 • 桥接模式 • 外观模式 • 组合模式 • 享元模式
1146 140
【23种设计模式·全精解析 | 创建型模式篇】5种创建型模式的结构概述、实现、优缺点、扩展、使用场景、源码解析

相关产品

  • 云消息队列 MQ
  • 推荐镜像

    更多
  • DNS