消息队列Pulsar是什么?消息队列Pulsar功能、优势和应用场景介绍

阿里云消息队列Pulsar,是阿里云基于开源Apache Pulsar构建的低延迟、高并发、高可用、高可靠的企业级消息订阅服务,可应用于金融、物联网、监控等要求海量数据、高实时性、高一致性的领域。例如:计费统计、订单数据处理、物联网传感器数据分析等场景。

产品优势
应用计算存储分离:采用云原生架构设计,可以按需扩缩容,全托管式服务用的更放心。多种消息类型:涵盖普通消息、顺序消息(全局顺序/分区顺序)、分布式事务消息、定时消息,可满足各种场景下的业务需求。高性能低延时:具备百万级消息生产消费的能力和海量消息存储的能力,单实例QPS超过10万,可轻松满足业务性能需求。全面兼容社区:全面兼容社区客户端和接口,无需修改代码即可完成到业务迁移,同时Java、C++、Go等语言以及HTTP协议,可扩展更多语言的接入。

产品功能

灵活弹性伸缩
计算存储分离,具备单独扩/缩消息处理的能力和消息存储的能力,灵活满足应对不同的业务需求。

多层级组织管理
支持Tenant/Namespace/Topic逻辑分层,可在Namespace维度给不同role添加生产或订阅权限,有利于不同业务系统之间的访问权限隔离。

可视化集群管理
支持通过页面管理Tenant、Namespace、Topic、Subscription,可查看各个Topic及Partiton维度消息生产和消费数据。

多样化订阅模式
支持Failover、Exclusive、Shared、Key_Shared四种订阅模式,可满足队列(Queue)和流(Stream)两种不同消息模型。

应用场景
计费/交易系统场景描述:
计费/交易系统作为企业最核心的系统,其关键需求是确保钱货一致,使用阿里云消息队列Pulsar借助其卓越的吞吐性能和数据强一致性,确保在处理交易链路较长、出错或超时概率较高的业务时,可以通过事务补偿实现最终一致性。

优势/特点:
强一致性要求,保证数据端到端始终一致;严格保证顺序,在订单、交易等场景下能够保证消息的先进先出(FIFO);实时数据更新,低时延;

建议搭配使用:
云数据库MySQL、云数据库Redis、云数据库HBase、消息通知服务。

流数据处理业务场景描述:
实时分析场景往往具备数据生产快、实时性强、数据量大的特点,这便导致传统先入库后分析的数据处理架构无法满足数据时效性需求。而Pulsar 结合 Storm/Flink/Spark 等流计算引擎,可以根据业务需求对数据进行实时计算分析,最终把结果保存或者分发给需要的组件或业务系统。

优势/特点:
海量数据吞吐量性能,可支持百万级消息吞吐,单集群 QPS 可超10万。可对接多种实时处理引擎,例如Flink、Spark、Storm、Samza。

建议搭配使用:
弹性MapReduce(EMR)、云数据库HBase、云数据库Redis、云数据库MySQL。

数据中转及同步场景场景描述:
大型零售商需要将其不同渠道销售数据与后台物流、仓储、供应链、计费、营销等业务系统打通,实现对市场趋势及用户需求的快速获取和积极响应,借助阿里云Pulsar数据订阅功能可以让下游系统实时获取最新数据并且增加下游业务数量的同时不会影响原有业务。

优势/特点:
一对多消费模式,同份数据可以被多个业务系统读取。实时数据更新,通过消息实时推送的方式,让数据实时得以更新。灵活可扩展,下游数据消费系统可随时增加/删减。

建议搭配使用:
阿里云服务器、容器服务、云数据库MySQL、云数据库HBase、云专线。

异步解耦削峰填谷场景描述:
抢票、秒杀等交易场景都存在上游业务压力波动严重,下游关联业务系统众多的问题,且整体业务系统复杂且庞大,架构稍有不合理将直接影响公司核心业务,使用异步结构可极大提升系统容错性和健壮性。

优势/特点:
采用高可用松耦合架构设计,通过上、下游业务系统的松耦合设计,即便下游子系统出现不可用甚至宕机,也不会影响到核心交易系统的正常运转;可灵活适应业务的快速增长,例如下游新增业务系统上游核心系统无需额外改造;具备超高流量脉冲处理能力,可保障业务量暴涨时上下游系统稳定运行,避免雪崩;

建议搭配使用:
阿里云服务器、容器服务、云数据Redis、云数据库MySQL。