昨天,咱们将分布式消息中间件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还有个商用版本?可否简单介绍下?orm
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分支。