04-海量消息队列革新之旅.pptx

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

分享标题分享人姓名+title消息队列革新之旅

目录消息队列发展云原生与PulsarPowerdata社区编委会2023-2034书籍预告

1消息队列发展阶段

操作系统、数据库、中间件是基础软件的三驾马车消息队列中间件:用于连接应用程序和操作系统,实现不同应用程序之间的通信和数据共享,用于实现异步通信和解耦消息队列已有30多年的历史从TheInformationBus到Kafka、Pulsar等技术的发展本文将从消息队列的发展历史说起,并逐渐提及Kafka、Pulsar等消息队列技术操作系统、数据库、中间件的三驾马车

发展历史

远古时代:天地混沌20世纪80年代为了解决不同软件系统间的通信难题,首款基于发布/订阅模式的消息队列——TheInformationBus应运而生TIB(TheInformationBus)主要服务于金融行业,解决证券交易软件之间的数据交换问题90年代国际商业软件巨头的时代,IBM、Oracle、Microsoft纷纷推出了自己的MQ其中最具代表性的是IBMMQ,价格昂贵,面向高端企业,主要是大型金融、电信等企业

2000年后初代开源消息队列崛起,并诞生了JMS(JavaMessageService)、AMQP(AdvancedMessageQueuingProtocol)两大标准分别定义了消息队列的标准接口和协议ActiveMQ和RabbitMQ分别作为JMS和AMQP这两种标准的具体实现典范引领了早期开源消息队列技术的创新潮流初步开源:惊鸿初现

初步开源:惊鸿初现2003年ActiveMQ诞生。JMS只针对于Java应用,其他语言无法使用JMS

初步开源:惊鸿初现AMQP(AdvancedMessageQueuingProtocol)在2003年时被提出。AMQP是一种协议,与JMS的本质差别,AMQP不从API层进行限定,而是直接定义网络交换的数据格式。2007年由Alexis和Matthias联合创办的公司RabbitTechnologies成立,同年该公司推出了第一个完全实现AMQP协议的消息队列产品RabbitMQ。

初步开源:惊鸿初现AMQP的功能强大且适用于复杂的集成场景,但其协议相对复杂,对于资源有限的设备来说可能过于沉重。MQTT作为一种轻量级的发布/订阅模式的消息传输协议,由IBM在1999年推出。它专为资源有限的设备和低带宽、高延迟或不稳定的网络而设计,非常适合需要小代码占用的应用场景(例如,机器之间通信或物联网)。初步开源:惊鸿初现

ActiveMQRabbitMQ初步开源:惊鸿初现

2010年后移动互联网的发展导致传统消息队列无法承受爆炸增长的访问流量和数据传输企业急需一个高吞吐、分布式、支持横向扩展的消息队列解决上述问题在这个阶段中Kafka与RocketMQ展现出他们的优势Kafka:高吞吐、持久化、分布式的特性完美解决了海量数据传输的痛点2010年底被开源,2011年7月被LinkedIn捐献到了Apache基金会2012年10月23日从Apache毕业成为顶级开源项目RocketMQ:实现了事务消息、延时消息、死信队列等消息特性阿里自主研发的一款可以满足大规模微服务场景的消息队列产品开源成熟:双柱擎天

2009年底,LinkedIn计划自研新一代消息产品Kafka高吞吐、持久化、分布式特性完美解决海量数据传输痛点2010年底,Kafka开源2011年7月,捐献给Apache基金会2012年10月23日,成为顶级开源项目Twitter、Netflix、Uber等公司广泛应用LinkedIn与Kafka的诞生

微服务概念提出2005年度云计算博览会专注于单一职责、语言无关、细粒度Web服务Kafka无法支撑大规模微服务场景消息特性不完善单条消息质量问题创建多个Topic时的性能不稳定问题微服务的发展与Kafka的局限性

Kafka的优势与局限优势高吞吐:通过异步写入、批处理等方式实现高吞吐持久化:将消息持久化到磁盘,保证消息不丢失分布式:支持集群部署,实现负载均衡和容错局限消息特性不完善:如消息顺序、重复消费等问题单条消息质量问题:如消息丢失、延迟等问题创建多个Topic时的性能不稳定

RocketMQ的诞生阿里自主研发消息队列产品满足大规模微服务场景需求实现事务消息、延时消息、死信队列等特性优化Kafka存储模型顺序读写方案解决多Topic场景下的性能不稳定问题

2云原生与Pul

您可能关注的文档

文档评论(0)

优选文档 + 关注
实名认证
内容提供者

专注于发布优质文档,喜欢的可以关注一下哦~

1亿VIP精品文档

相关文档