消息队列MQ

消息队列(Message Queue,简称 MQ)是基于高可用分布式集群技术,提供消息发布订阅、消息轨迹查询、定时(延时)消息、资源统计、监控报警等一系列消息云服务,是企业级互联网架构的核心产品。MQ 历史超过9年,为分布式应用系统提供异步解耦、削峰填谷的能力,同时具备海量消息堆积、高吞吐、可靠重试等互联网应用所需的特性。

产品简介

消息队列(Message Queue,简称 MQ)是基于高可用分布式集群技术,提供消息发布订阅、消息轨迹查询、定时(延时)消息、资源统计、监控报警等一系列消息云服务,是企业级互联网架构的核心产品。MQ 历史超过9年,为分布式应用系统提供异步解耦、削峰填谷的能力,同时具备海量消息堆积、高吞吐、可靠重试等互联网应用所需的特性。

MQ 是正式商用的产品,目前在多个地域(Region)提供了高可用消息云服务,单个域内采用多机房部署,可用性极高,即使整个机房都不可用,仍然可以为应用提供消息发布服务。

MQ 目前提供 TCP 、HTTP、MQTT 三种协议层面的接入方式,支持 Java、C++ 以及 .NET 不同语言,方便不同编程语言开发的应用快速接入 MQ 消息云服务。用户可以将应用部署在 ECS、企业自建云,或者嵌入到移动端、物联网设备中与 MQ 建立连接进行消息收发,同时本地开发者也可以通过公网接入 MQ 服务进行消息收发。

产品功能

MQ 提供了多种协议和开发语言的接入方式以及多维度的管理工具,同时针对不同的应用场景提供了一系列的特色功能。

功能概览图


多协议接入

  • 支持 HTTP 协议:支持 RESTful 风格 HTTP 协议完成收发消息,可以解决跨语言使用 MQ 问题。

  • 支持 MQTT 协议:支持主动推送模型,多级 Topic 模型支持一次触达 1000万+ 终端,可广泛应用于物联网和社交即时通信场景。

  • 支持 TCP 协议:区别于 HTTP 简单的接入方式,提供更为专业、可靠、稳定的 TCP 协议的 SDK 接入。

管理工具

  • Web 控制台,支持 Topic 管理、生产者管理、消费者管理、消息查询、消息轨迹、资源报表以及监控报警管理。

  • Open API,提供 API 允许用户将 MQ 管理工具集成到自己的控制台。

  • mqadmin 命令集,专有云输出提供一套丰富的管理命令集,以命令方式对 MQ 服务进行管理。

特色功能

  • 事务消息,实现类似 X/Open XA 的分布事务功能,以达到事务最终一致性状态。

  • 定时(延时)消息,允许消息生产者指定消息进行定时(延时)投递,最长支持40天。

  • 大消息,目前默认支持最大 256KB 消息,华北2 地域支持最大 4MB 消息。

  • 消息轨迹,通过消息轨迹,用户能清晰定位消息从发布者发出,经由 MQ 服务端,投递给消息订阅者的完整链路,方便定位排查问题。

  • 广播消息,允许一个 Consumer ID 所标识的所有 Consumer 都会各自消费某条消息一次。

  • 顺序消息,允许消息消费者按照消息发送的顺序对消息进行消费。

  • 重置消费进度,根据时间重置消费进度,允许用户进行消息回溯或者丢弃堆积消息。

专有云部署

  • 专家定制,提供技术方案设计;专家现场技术支持与培训。

  • 灵活部署,支持专有云独立部署,同时支持混合云架构。

  • 运维管控,专有云支持 mqadmin 命令集、Open API 运维管理工具,方便管控平台集成以及统一运维。

产品优势

本文主要介绍 MQ 相比其他消息中间件所具备的优势。

专业

  • 消息领域业内专业的消息中间件,产品历史超过 9 年,消息保证不丢,技术体系丰富成熟。

  • 1000+ 核心应用使用,每天流转几千亿条消息,经过核心链路真实场景的验证,稳定可靠。

高可靠

  • 一份消息多份落盘存储,经过严格的断电测试,消息依然保证不丢失。

  • 允许海量消息堆积,单个 Topic 可堆积 100亿+条消息,系统高流量压力下依然可靠。

  • 默认消息持久化存储 3 天,支持重置消费位点消费3天之内任何时间点的消息。

高性能

  • 同一网络内,消息传输网络时延在 10 毫秒之内,性能测试下,网卡可被打满。

  • 默认单 Topic 发送消息上限为每秒 5000 条,最高可申请扩展至 10W 以上。

  • 默认单条消息大小最大支持 256KB,华北2 地域支持 4MB 大消息。

多协议接入

  • 支持 HTTP 协议:支持 RESTful 风格 HTTP 协议完成收发消息,可以解决跨语言使用 MQ 问题。

  • 支持 MQTT 协议:支持主动推送模型,多级 Topic 模型支持一次触达1000万+ 终端,可广泛应用于物联网和社交即时通信场景。

  • 支持 TCP 协议:区别于 HTTP 简单的接入方式,提供更为专业、可靠、稳定的 TCP 协议的 SDK 接入。

独立部署

  • 支持专有云独立输出,支持物理机和虚拟机,仅几台机器便可搭建完整消息云服务。

  • 专有云配套 mqadmin 命令集和管理类 Open API,方便运维人员实时监控系统状态。

  • 支持混合云架构,允许用户通过专线的方式接入服务。