网站总体规划设计说明,垂直网站怎么建设,建站教程的优点,wordpress要收钱吗省流#xff1a;
十几年前#xff0c;淘宝的notify#xff0c;借鉴ActiveMQ。京东的ActiveMQ集群几百台#xff0c;后面改成JMQ。
Linkedin的kafka#xff0c;因为是scala#xff0c;国内很多人不熟。淘宝的人把kafka用java写了一遍#xff0c;取名metaq#xff0c;后…省流
十几年前淘宝的notify借鉴ActiveMQ。京东的ActiveMQ集群几百台后面改成JMQ。
Linkedin的kafka因为是scala国内很多人不熟。淘宝的人把kafka用java写了一遍取名metaq后来再改名RocketMQ。 正文
总的来说三大原因语言、潮流、生态。
MQ这种东西当你的消息量不大的时候用啥是没多大区别的。特别是在过去20年里有些阶段你没多少开源的MQ可选所以最开始ActiveMQ和RabbitMQ还是很火的。
ActiveMQ、RabbitMQ、Kafka/RocketMQ包括最近很火的pulsar都非常有自己的特色但是中间件这条线上越早出现的包袱越大功能可能更多比如ActiveMQ发展16年了有大几百个功能你能想到的所有消息领域的特性它全都有所有消息协议都支持搞的太重了。淘宝最早期的notify就是借鉴ActiveMQ来的。
京东多年使用大规模的ActiveMQ集群10年前就有几百台了然后发现古老的MQ模型broker太重量一大就卡90%用ActiveMQ但是有一定规模的数据量这个问题都搞不好搞然后慢慢发展了自己的JMQ。当年大家消息吞吐量都不大的时候RabbitMQ就是神器吞吐高出ActiveMQ几倍。但是慢慢大家发现真有什么问题团队没有erlang高手的话没任何办法。比如说一天几个亿、几十亿的消息RabbitMQ一卡住上下游所有交易订单处理全都蹦掉了。
这个时候linkedin搞出来了kafka天然支持消息堆积。然后很快twitter之类的公司快速跟上在传输消息量非常大的几个领域大数据的数据传输日志和监控数据收集等领域就称霸了。这个几年的代差让大家不在一个起跑线上。紧接着淘宝尝试用kafka效果不错但是搞不定scala然后像从ActiveMQ发展出来了notify一样基本上用java把kafka翻译了一遍有了metaq然后再逐渐出来了RocketMQ发展了很多年跟Kafka有一些小的差异本质上还是那一套。
特别是最近这5-6年随着整个互联网数据量的进一步增大kafka/rocketmq在越来越丰富的场景下证明了分布式支持堆积消息的优越性。大家积累了大量的经验和应用场景然后发现日常做业务也可以放心大胆用mq处理了。
最后kafka和RocketMQ本身社区活跃工具体系丰富发展的很快ActiveMQ中间尝试6.x版本浪费了很多年最近两年跟hornetq合并才有新的发展方向。RabbitMQ中间也错失了一些机会。特别是RabbitMQ属于pivotalspring品牌所在的公司有个erlang的产品跟其他的东西相比蛮奇怪的也许这也有些原因。
总而言之现在技术发展太快了越是后起之秀越能站上前辈的肩膀上实现弯道超车。Kafka/RocketMQ首先是基于JVM和Java其次就是赶上了数据量爆发的快车道最后是体系工具非常丰富所以目前基本上占山为王时至今日几乎可以说rpc和mq是分布式大厦门口最基础的两块砖。
Kafka在stream流处理的道路上越走越远下一波大的技术浪潮也许还能赶上。
个人非常看好pulsar在kafka的基础上进一步的分离计算和存储计算存储分离是下一代基础软件的大趋势国内很多人在负责和参与这个新的MQ项目。
对了前面提到的所有MQ只有RabbitMQ是pivotal的其他的都属于Apache开源基金会。
2021-04-08 https://www.zhihu.com/question/449611434/answer/1824707689 至于用不用erlang开发只不过正巧emq和rabbitmq都是用erlang开发的但是这个跟你准备用啥语言开发一点关系都没有。你的程序接收到MQTT消息后就可以作为消息中间件的producer转发给消息中间件消息中间件你可以选RabbitMQ也可以选ActiveMQkafka等。这个消息中间件的作用是解耦消息解析和消息分发处理的业务逻辑让其他应用作为消息中间件的consumer可以去订阅消费它所需的消息。
MQTT是IBM制定的物联网通信协议。可以先读下3.1.1版本MQTT协议标准文档有中文版。emq是华为出来的人开发的遵循MQTT等协议的MQTT broker。官网有详细使用文档。有开源版本和收费的企业版。RabbitMQ不能称之为中间件更准确的说法是AMQPAdvanced Message Queue 高级消息队列协议协议的一种broker实现。
https://www.zhihu.com/question/326354272/answer/698693509