zoukankan      html  css  js  c++  java
  • 阿里开源消息中间件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分支。

  • 相关阅读:
    Python 爬虫js加密破解(一) 爬取今日头条as cp 算法 解密
    Python 爬虫实例(2)—— 爬取今日头条
    Python 爬虫实例(1)—— 爬取百度图片
    python 操作redis之——HyperLogLog (八)
    python 操作redis之——有序集合(sorted set) (七)
    Python操作redis系列之 列表(list) (五)
    Python操作redis系列以 哈希(Hash)命令详解(四)
    Python操作redis字符串(String)详解 (三)
    How to Install MySQL on CentOS 7
    Linux SSH远程文件/目录 传输
  • 原文地址:https://www.cnblogs.com/felixzh/p/6197620.html
Copyright © 2011-2022 走看看