本文列举消息队列 RocketMQ 版所支持的所有功能与特性。

概览

消息队列 RocketMQ 版在阿里云多个地域(Region)提供了高可用消息云服务。单个地域内采用多机房部署,可用性极高,即使整个机房都不可用,仍然可以为应用提供消息发布服务。

消息队列 RocketMQ 版提供 TCP 和 HTTP 协议的多语言接入方式,方便不同编程语言开发的应用快速接入消息队列 RocketMQ 版消息云服务。您可以将应用部署在阿里云 ECS、企业自建云,或者嵌入到移动端、物联网设备中与消息队列 RocketMQ 版建立连接进行消息收发;同时,本地开发者也可以通过公网接入消息队列 RocketMQ 版服务进行消息收发。functionswithoutstomp

多协议接入

  • HTTP 协议:采用 RESTful 风格,方便易用,快速接入,跨网络能力强。支持 Java、C++、.NET、Go、Python、Node.js 和 PHP 七种语言客户端。
  • TCP 协议:区别于 HTTP 简单的接入方式,提供更为专业、可靠、稳定的 TCP 协议的 SDK 接入服务。支持的语言包括 Java、C/C++ 以及 .NET。

管理工具

  • Web 控制台:支持 Topic 管理、Group 管理、消息查询、消息轨迹展示和查询、资源报表以及监控报警管理。
  • OpenAPI:提供开放的 API 便于将消息队列 RocketMQ 版管理工具集成到自己的控制台。消息队列 RocketMQ 版的 API 详情请参见OpenAPI 参考

消息类型

  • 普通消息消息队列 RocketMQ 版中无特性的消息,区别于有特性的定时和延时消息、顺序消息和事务消息。
  • 事务消息:实现类似 X/Open XA 的分布事务功能,以达到事务最终一致性状态。
  • 定时和延时消息:允许消息生产者对指定消息进行定时(延时)投递,最长支持 40 天。
  • 顺序消息:允许消息消费者按照消息发送的顺序对消息进行消费。

特性功能

  • 消息查询消息队列 RocketMQ 版提供了三种消息查询的方式,分别是按 Message ID、Message Key 以及 Topic 查询。
  • 查询消息轨迹:通过消息轨迹,能清晰定位消息从生产者发出,经由消息队列 RocketMQ 版服务端,投递给消息消费者的完整链路,方便定位排查问题。
  • 集群消费和广播消费:当使用集群消费模式时,消息队列 RocketMQ 版认为任意一条消息只需要被消费者集群内的任意一个消费者处理即可;当使用广播消费模式时,消息队列 RocketMQ 版会将每条消息推送给消费者集群内所有注册过的消费者,保证消息至少被每台机器消费一次。
  • 重置消费位点:根据时间或位点重置消费进度,允许用户进行消息回溯或者丢弃堆积消息。
  • 死信队列:将无法正常消费的消息储存到特殊的死信队列供后续处理。
  • 全球消息路由:用于全球不同地域之间的消息同步,保证地域之间的数据一致性。
  • 资源报表:消息生产和消费数据的统计功能。通过该功能,您可查询在一段时间范围内发送至某 Topic 的消息总量或者 TPS(消息生产数据),也可查询在一个时间段内某 Topic 投递给某 Group ID 的消息总量或 TPS(消息消费数据)。
  • 监控报警:您可使用消息队列 RocketMQ 版提供的监控报警功能,监控某 Group ID 订阅的某 Topic 的消息消费状态并接收报警短信,帮助您实时掌握消息消费状态,以便及时处理消费异常。