摘要: 昨天,我们将分布式消息中间件RocketMQ捐赠给了开源软件基金会Apache。 孵化成功后,RocketMQ或将成为国内首个互联网中间件在Apache上的顶级项目。 消息一出,本以为群众的反应是这样的: 然而事实上,群众的反应是这样的: 今天,特别邀请到阿里巴巴中间件(Aliware)技术研究员蒋江伟(花名:小邪)跟大家分享一下RocketMQ开源的前世今生。

昨天,我们将分布式消息中间件RocketMQ捐赠给了开源软件基金会Apache。

孵化成功后,RocketMQ或将成为国内首个互联网中间件在Apache上的顶级项目。

消息一出,本以为群众的反应是这样的:

然而事实上,群众的反应是这样的:

今天,特别邀请到阿里巴巴中间件(Aliware)技术研究员蒋江伟(花名:小邪)跟大家分享一下RocketMQ开源的前世今生。

Q:能否简单介绍下RocketMQ的历史

A:早在2007年,阿里巴巴中间件团队就自主研发了Notify消息中间件,大范围应用于生产系统。为满足线上应用海量堆积的需求。2011年阿里巴巴中间件团队自主研发了RocketMQ消息中间件,具有单机亿级消息堆积能力,且能支持严格的消息顺序。截止今年,阿里巴巴线上所有消息全部通过RocketMQ来转发投递,2016年双十一当天更是达到万亿级消息量,峰值TPS几千万,创造了国内乃至世界上最大的消息流转记录。

Q:RocketMQ有哪些特性呢?

A:RocketMQ是一个低延迟,高可靠的分布式消息中间件。它被设计为采用长轮询拉的模式,支持传统消息领域的点对点和发布订阅模型,单主题下支持千万级别的消息堆积,对于离线计算具有很好的削峰填谷作用。对于企业级应用,它能很好的起到异步解耦的作用。作为数据通道,RocketMQ在事务数据复制(全局有序),实时计算方面也具备高效的吞吐,在今年双十一阿里巴巴数据应用场景里,RocketMQ端到端的平均延迟落在了100ms以内。

Q:听说RocketMQ还有个商用版本?能否简单介绍下?

A:RocketMQ的商业版本是阿里云的消息队列MQ(点击阅读原文可直达Aliware介绍页面),两个产品都是由阿里中间件消息团队出品。商业版MQ在支持TCP接入基础上,还支持HTTP和物联网MQTT协议接入,功能方面增强了运维管控方面的能力,包括可视化的消息轨迹、资源报表统计以及监控报警等;商业版MQ公有云上本身具备多机房部署同城高可用容灾特性,保证企业级高可靠高性能的同时,大大降低了企业客户运维成本。

Q:同时拥有商用版和开源版,中间件团队将如何维护呢?

A:开源和商业的协同效应,如何发挥到极致?这是一个世界性难题。以开源为核,商业为辅的形式,是我们目前得出的一个比较靠谱的可行之路。换句话说,我们会开源分布式消息所有核心的特性,而在商业层面,尤其是云平台的搭建上面,将运维管控,安全授权,深度培训等纳入商业重中之重。按照社区,尤其是Apache开源社区的运营理念,在社区建设,文档编纂,研讨交流,人才引进等方面加大投入。

Q:阿里为什么要做开源?

A:在阿里建立之初,正是基于开源软件,将整个电商平台的原型快速搭建起来的。不仅如此,即便这么多年过去了,虽然阿里的基础平台还在不断演进,但仍旧有开源软件的身影。我们感恩社区,也希望将这些久经线上验证的臻品拿出来,分享出来,回馈社区,让更多的人收益。我们希望更多的人能够参与进来,在这样一个开放透明,全球协作的环境下,相信阿里巴巴在开源领域会取得更多的成绩。

Q:还有什么想对大家说的?

A:阿里巴巴将RocketMQ捐赠给Apache只是第一步。如何将RocketMQ打造成为Apache Top Level Project,如何开源与商业化产品共赢,我们非常需要有志之士加入,欢迎发送简历到shijia.wxr@taobao.com

阿里巴巴积极拥抱开源事业

除了此次捐赠的RocketMQ外,其实阿里巴巴集团一直积极拥抱开源事业,无论是开源软件的应用、回馈以至自研技术的开源都非常活跃。

目前维护的热门开源项目超过 115 个。

捐赠的开源项目 JStorm 成为 ApacheStorm 里的子项目。

RocketMQ 已经被1000多家公司使用。

Tengine 现在是九大最流行的 WebServer 之一。

不久之前,还开源了AliSQL、跨平台开发框架 Weex。

阿里巴巴是 FSF、Apache、Linux 等基金会成员, Xen 顾问委员会成员。

阿里云还是MySQL开源分支 WebScaleSQL 的第五位发起成员。该分支是由 Facebook、 Google、LinkedIn 和 Twitter 四家互联网公司的数据库团队发起的以适应互联网场景为目标的MySQL分支。

消息中间件学习总结(2)——RocketMQ之阿里开源消息中间件RocketMQ的前世今生相关推荐

  1. 阿里开源消息中间件MetaQ(RocketMQ)简介

    MetaQ(RocketMQ)是一款分布式.队列模型的消息中间件,具有以下特点: 支持严格的消息顺序 支持Topic与Queue两种模式 亿级消息堆积能力 比较友好的分布式特性 同时支持Push与Pu ...

  2. Dubbo学习总结(8)——阿里开源框架:Dubbo2.7 三大新特性详解!

    分享一个大神的人工智能教程.零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到人工智能的队伍中来!点击浏览教程 1.背景介绍 自 2017 年 7 月阿里重启 Dubbo 开源,到目前为止 git ...

  3. 消息中间件学习总结(10)——Kafka、RabbitMQ、RocketMQ消息中间件的消息发送性能对比

    引言 分布式系统中,我们广泛运用消息中间件进行系统间的数据交换,便于异步解耦.现在开源的消息中间件有很多,前段时间我们自家的产品 RocketMQ (MetaQ的内核) 也顺利开源,得到大家的关注. ...

  4. 消息中间件学习总结(3)——RocketMQ之十分钟入门RocketMQ

    本文首先引出消息中间件通常需要解决哪些问题,在解决这些问题当中会遇到什么困难,Apache RocketMQ作为阿里开源的一款高性能.高吞吐量的分布式消息中间件否可以解决,规范中如何定义这些问题.然后 ...

  5. rocketmq 消息指定_闲话RocketMQ

    一.简介 Apache RocketMQ是阿里开源的一款高性能.高吞吐量的分布式消息中间件,具有高性能.高可靠.高实时.分布式特点. 能够保证严格的消息顺序,提供丰富的消息拉取模式. 高效的订阅者水平 ...

  6. 消息中间件学习总结(9)——RocketMQ与kafka差异比较分析

    淘宝内部的交易系统使用了淘宝自主研发的Notify消息中间件,使用Mysql作为消息存储媒介,可完全水平扩容,为了进一步降低成本,我们认为存储部分可以进一步优化,2011年初,Linkin开源了Kaf ...

  7. 消息中间件学习总结(5)——RocketMQ之Apache RocketMQ背后的设计思路与最佳实践

    摘要:为了更好地让开发者们更加深入了解阿里开源,阿里云云栖社区在3月1号了举办"阿里开源项目最佳实践"在线技术峰会,直播讲述了当前阿里新兴和经典开源项目实战经验以及背后的开发思路. ...

  8. 消息中间件学习总结(1)——RocketMQ之专访RocketMQ联合创始人:项目思路、技术细节和未来规划

    编者按 这些年开源氛围越来越好,各大IT公司都纷纷将一些自研代码开源出来.2012年,阿里巴巴开源其自研的第三代分布式消息中间件--RocketMQ.经过几年的技术打磨,阿里称基于RocketMQ技术 ...

  9. 阿里开源MNNKit:基于MNN的移动端深度学习SDK,支持安卓和iOS

    2020-01-23 09:07:03 机器之心报道 参与:一鸣.Jamin 近来,有越来越多的深度学习框架开始面向移动端进行发展.近日,阿里也基于其 MNN 推理引擎开源了最新的 MNNKit 深度 ...

最新文章

  1. doe报告模板_技术漫谈|关于制剂研发过程中的实验设计(DOE)误区讨论
  2. oracle db_files,如何解决 Oracle 中 DB_FILES 限制引起的 ORA-00059 问题
  3. 理解extract_patches_2d
  4. 也许MVC不该重写Url格式?
  5. 23个 Git 最常用命令速查手册,值得收藏!
  6. C++类中的main函数
  7. Spring装配集合属性
  8. Linux下制作Windows系统盘,制作linux系统盘
  9. WiFi技术简述与发展
  10. 学计算机买戴尔笔记本哪款,戴尔笔记本大学生用,买哪款比较好?
  11. 手指滑动控制系统全局音量的程序(上)
  12. 耐心看完,越到后面越精彩
  13. PVH Corp.任命Stefan Larsson担任新设总裁职位
  14. 如何从零开始写一个操作系统?
  15. 老闪创业那些事儿(14)——测试老白变身记
  16. 一文读懂Apache Kylin(麒麟)
  17. shawl.qiu Javascript 前景色背景色调色类 / BgColorScheme v1.0
  18. hessian矩阵特征值
  19. 《这是全网最硬核redis总结,谁赞成,谁反对?》六万字大合集
  20. VS2008(2010)开发C++

热门文章

  1. linux contos升级内核,CentOS7升级内核方法
  2. C++新特性探究(十三):右值引用(r-value ref)探究
  3. 无网络访问权限怎么办_老司机教你IPV4无网络访问权限怎么办
  4. linux pid t 头文件_pid和tid及线程调度
  5. mysql循环建表_MySQL 开发准则(总结自阿里巴巴开发手册)
  6. html pre标签增加行号,vue使用highlight.js 添加行号
  7. java比对文本文件_Java编程实现比对两个文本文件并标记相同与不同之处的方法...
  8. mySQL危险命令_MYSQL教程Linux系统中最危险的10条命令
  9. build vue3 后压缩的文件在哪_Vue 3学习:4. 集成vuex
  10. oracle12 共享内存不存在,DBA警世录:Oracle的共享内存段