产品白皮书
# 版本更新说明
| 日期 | 手册版本 | 适用产品 | 更新说明 |
|---|---|---|---|
| 2024年12月 | V2.0.2 | ADMQ | 新增版权声明等内容 |
| 2025年12月 | V2.0.5 | ADMQ | 产品升级 |
| 2026年06月 | V2.0.6 | ADMQ | 新增ADMQ专用化引擎系列 |
# 引言
消息中间件主要用于协助程序之间实现异步通信,在系统架构中起到削峰填谷、异构集成、应用解耦和异步隔离等作用。传统的消息中间件基于JMS规范发展而起,如金蝶天燕于2003年左右推出的金蝶Apusic消息中间件。伴随互联网应用的发展,RocketMQ、Kafka、RabbitMQ等分布式消息中间件开始兴起,这些消息中间件有的关注吞吐能力,有的关注高性能,有的关注灵活路由,不同的产品适用于不同的应用场景,如Kafka倾向于数据流处理,主要应用于大数据流处理和日志处理场景。
近年来,随着云计算及微服务架构的流行,分布式消息引擎在物联网、分布式事务、实时计算和大规模缓存同步等场景中的应用日益增多。以银行为例,分布式消息队列可以将交易拆分成多个本地子事务,通过消息队列进行异步处理,提高交易处理的效率和并发性,减少系统同步阻塞和脏读的可能性。分布式消息队列可以用于大规模数据的快速分析和处理,提高风险评估和数据分析的效率和准确性。
2020年,金蝶天燕启动了传统消息中间件面向金融、电信行业的改造升级,将目光投向了新一代金融级消息队列技术,研发新一代消息中间件产品并提供相关的支持服务。经过持续的产品演进,ADMQ已形成两大产品形态:面向大规模消息平台场景的统一消息底座,以及面向开源消息替代场景的ADMQ专用化引擎系列,全面满足企业不同层次的消息中间件需求。
# 发展历程
- 2026年06月,ADMQ V2.0.6发布,新增ADMQ for Kafka、ADMQ for RocketMQ、ADMQ for RabbitMQ、ADMQ for MQTT等专用化引擎。
- 2024年12月,ADMQ V2.0.2发布,新增版权声明等内容。
- 2023年12月,ADMQ V2.0标准版适配多个国产软硬件系统。
- 2023年07月,发布ADMQ V2.0标准版,提供企业级消息中间件能力。
- 2022年06月,发布ADMQ V2.1版本,支持三员权限管理和多实例部署管理。
- 2021年12月,发布ADMQ V2.0版本,提供插件扩展能力、适配多个国产软硬件系统。
- 2021年08月,发布ADMQ V1.1版本,提供动态代理和快速安装功能。
- 2021年07月,发布完善的ADMQ V1.0版,为企业应用提供分布式消息能力。
- 2021年05月,ADMQ V1.0 beta版,具备统一消息接入能力。
- 2021年01月,自主研发分布式消息队列软件立项。
# 产品概述
金蝶Apusic分布式消息队列(Apusic Distributed Message Queue,简称ADMQ)是金蝶天燕面向企业级应用场景打造的金融级分布式消息中间件产品系列。ADMQ提供两种产品形态,以适应不同规模和场景的需求:
# 产品名称
金蝶 Apusic 分布式消息队列软件 V2.0(Apusic Distributed Message Queue,简称 ADMQ)提供两种产品形态,覆盖从平台化建设到信创替代的完整场景:
- ADMQ 统一消息底座:面向大型企业统一消息中台、多租户共享基础设施、跨地域数据复制及复杂消息处理等大规模平台化场景,提供企业级消息底座能力。
- ADMQ 专用化引擎:面向信创替代与开源消息产品替换场景,提供五款专用化引擎——ADMQ for Kafka、ADMQ for RocketMQ、ADMQ for RabbitMQ、ADMQ for ActiveMQ、ADMQ for MQTT,实现平滑迁移与无缝替换。
# 产品受众
- 分布式应用架构师和开发人员。
- 大数据开发工程师。
- 系统监控、运维人员。
- 企业信创项目负责人和决策者。
- 金融、电信、政务、能源等行业用户。
# ADMQ统一消息底座
# 产品定位
ADMQ统一消息底座是一款金融级分布式消息中间件,具有多租户隔离、跨集群复制、强一致性、高可靠、高并发、云原生、丰富的消息类型等特性。采用计算存储分离的架构,可灵活扩缩容。支持原生Java、C++、Python、Go多种API。支持以Kafka、RocketMQ、RabbitMQ、ActiveMQ客户端和MQTT、JMS等协议接入,从而简化不同业务系统的接入难度。
ADMQ统一消息底座可应用于削峰限流、系统解耦、异步处理、数据分析等场景,性能方面满足海量消息堆积、高吞吐、低延迟需求。提供资源可视化统一管理控制平台和实时监控功能。
# 核心功能
| 功能 | 功能说明 |
|---|---|
| 消息发布/订阅 | 一对多消费模式,发布者可以将消息发送到主题,被一个或多个消费者同时消费。同时支持点对点传输模式。 |
| 跨地域复制 | 消息的跨地域、远距离、毫秒级实时同步,支持消息的跨地域发布和订阅。 |
| 多租户支持 | 集群内置多租户支持,充分利用基础设施,简化了运维和管理。 |
| 多语言客户端 | 提供Java、Go、Python、C++、.NET、Node.js等多语言客户端。 |
| 多协议接入 | 支持原生Kafka、RocketMQ、RabbitMQ、ActiveMQ、MQTT、JMS协议接入,无需修改代码即可完成到ADMQ的迁移。 |
| 消息压缩 | 消息压缩发送,支持LZ4、ZLIB、ZSTD、SNAPPY、GZIP等多种压缩格式。 |
| 网络协议 | 支持IPv4和IPv6;支持主机双网卡;支持消息传输时指定IP地址。 |
| 文件传输 | 支持文件可靠传输,支持断点续传,支持多线程并发发送。 |
| 消息传输 | 支持消息可靠传输,支持断点续传。 |
| 统一认证授权 | 提供统一的可视化界面,管理租户、命名空间、主题的创建和销毁,并分配用户相应的使用权限。 |
| 优先级队列 | 支持消息优先级处理。 |
| 消息查询 | 支持消息查询和全链路消息轨迹追踪。 |
| 国密SSL传输 | 在消息传输过程中支持国密SSL加密传输。 |
# 产品功能架构
ADMQ统一消息底座由三部分组成:无状态的服务层,负责处理生产者发出的消息,并将这些消息分派给消费者;存储层负责消息的持久化存储;Zookeeper进行元数据存储、集群配置和协调。

# 主要功能
# 统一消息模型
通过"订阅"抽象出了统一的消费模型:生产者-主题-订阅-消费者。ADMQ的消息模型既支持队列模型,也支持流模型。消息在主题上仅存储一次,但是用户可以有不同的订阅方式来消费这些消息:
- 消费者被组合在一起消费消息,每个消费组是一个订阅。
- 每个主题可以有不同的消费组。
- 每组消费者都是对主题的一个订阅。
- 每组消费者可以拥有自己不同的消费模型:
- 独占(Exclusive):在任何时间,一个消费者组中有且只有一个消费者来消费主题中的消息。
- 故障切换(Failover):多个消费者可以附加到同一订阅。但是一个订阅中的所有消费者,只会有一个消费者被选为该订阅的主消费者,其他消费者将被指定为故障转移消费者。
- 共享(Share):同一个订阅,用户按照应用的需求挂载任意多的消费者。订阅中的所有消息以循环分发形式发送给多个消费者,并且一个消息仅传递给一个消费者。
- Key共享:同一个订阅,用户可根据给定的映射规则,订阅中相同key的消息发送给同一个消费者。
# 跨地域复制
跨地域复制是将ADMQ中持久化的消息在多个集群间备份。ADMQ在核心服务上构建了跨地域复制功能,用户可以在部署时选择同步或异步配置,并且可以按主题配置复制机制。生产者可以从任何地区写入共享主题,ADMQ负责确保这些信息对各地的消费者均可见。
ADMQ只需进行简单配置,即可在多个方向复制单个主题到任意数量的外部数据中心。ADMQ在后台进行数据同步,由存储层处理,不会影响服务层正在处理的其他工作负载。

# 多租户
每个租户都可以有单独的认证和授权机制。租户也是存储配额、消息TTL和隔离策略的管理单元。多租户基础设施可以跨多个用户和组织共享,同时保证它们彼此隔离。一个租户的活动不会影响其他租户的安全或SLA。
# 权限控制
支持在租户和命名空间上管理和分配用户的权限。当消息生产者和消费者连接到集群时,需要对生产者和消费者使用的资源进行权限的分配,保障数据的安全性。
支持主-子账户权限模型,子账户拥有的权限是主账户的子集。
# 事务支持
多个消息发送和接收可包含在一个事务里,ADMQ保证一个事务中的所有消息发送和消息接收的单元操作要么全部成功,要么全部失败。通过对事务的支持,ADMQ可以将多个消息的发送包含进一个事务中,从而轻松地实现诸如关联交易等业务。
# 消息分块传输
ADMQ对单条消息的长度没有严格限制,在消息传输协议中使用4字节存储消息负载长度,理论上最大支持传输2G的消息内容。
为了保证传输性能,每条消息的长度最好限制在10M以内。对于比较大的消息,ADMQ支持分块传输的方式,在客户端侧把消息切割成多个消息块,当所有的消息块都传输成功后,ADMQ再按顺序把所有消息块组装成一条完整的消息发送给订阅客户端。
# 传输安全
支持TLS协议,从而实现客户端与服务器之间、以及服务器与服务器之间的传输通道安全保护;支持国密SSL。
支持传输过程中的消息进行加密。生产者和消费者可以提前约定私钥,生产者发送消息时对消息进行加密,消费者通过私钥对消息进行解密,从而保证消息在传输过程中的安全性。
# 多协议接入
ADMQ提供强大的多协议接入能力。计算部分把涉及到消息处理的部分抽象出API接口,包括消息的读写、Topic发布和管理、分区处理、消息内容格式化、消费进度和消息查询等功能API的抽象。当客户端使用其他协议接入时,就可以很方便的把对应的操作转换成抽象API中的方法。
这种方式能很容易的适配其他协议的客户端,目前支持Kafka协议、RocketMQ协议、RabbitMQ协议、AMQP协议、JMS协议和MQTT协议。
# 多副本存储
ADMQ接收到消息后可以把消息副本存储到多个节点上,同时可基于地域或者机房的策略存储,保证副本平分到不同的地域和机房,从而提高数据的可用性。
# 多集群传输通道
ADMQ内置了跨集群消息传输功能,当其中一个集群收到消息后自动转发到其他集群,从而实现多集群、跨网络的消息传输功能。
支持租户、命名空间的维度配置消息的转发目的地。
# 黑白名单
ADMQ支持IP、网段的黑白名单过滤,严格控制客户端访问的IP或网段。
# 可视化管控台
- 集群管理:部署管理ADMQ集群;证书管理、依赖管理、插件管理,节点管理;配置集群信息、配置节点参数;自动扩容;节点资源监控等。
- 用户管理:新增用户信息、编辑用户信息、删除用户信息、修改用户密码、查看令牌、查看权限。
- 通道管理:跨集群间的消息复制可视化界面,包括:新增通道信息、编辑通道信息、删除通道信息。
- 资源管理:管理监控租户、命名空间、主题。
- 消息查询:监控查询消息的轨迹。
- 系统运维:监控运维、系统告警、功能验证、节点日志。
- 系统配置:服务器管理、license管理、软件包管理、默认配置管理、操作日志、事件管理。
- 插件管理:Kafka管理、RocketMQ管理、RabbitMQ管理、ActiveMQ管理。
# 监控运维
管控台自带的监控运维模块可用于监控管理集群信息并以图表的形式直观显示出来。
集成auc登录平台和amp监控平台,集群节点可通过管控台监控自动跳转到amp监控图表界面,对节点资源情况进行监控。
对于统一消息底座中的协议插件,管控台分别从租户、主题、订阅组等维度对资源生产消费情况进行监控。
提供HTTP监控接口。
# 技术特性
# 计算与存储分离
ADMQ统一消息底座采用计算与存储分离的云原生架构,将消息的存储和服务分开,可实现存储层和服务层的独立扩展。扩容过程无需任何数据再平衡,不会将旧数据从现有存储节点复制到新存储节点,从而降低了网络带宽和I/O的消耗。
# 高性能低延迟
能够高效支持百万级消息生产和消费,海量消息堆积且消息堆积容量不设上限。单集群QPS超过10万,同时在时耗方面有保护机制来保证低延迟,满足业务性能需求。
# 无限制的主题存储
主题被分割成分片,以分布式方式存储,因此主题的容量不受单一节点容量的限制。
# 无缝故障恢复
由于服务层是无状态节点,所以某一个节点宕机对整体的生产和消费没有任何影响,集群会根据负载将主题重新分配给可用的节点。
一条消息在被确认之前会被持久化到N个存储节点,数据在多个节点上都可以被访问,并且可以在N-1个节点故障中存活。通过添加新的存储节点来替换失败的节点,不影响整个集群的可用性。
# 内置轻量级计算引擎
内置轻量级计算引擎,让开发人员可以使用Java或Python实现函数(处理逻辑),为用户提供了一个部署简单、运维方便的FaaS(Function as a Service)平台。此功能使用户可以享受无服务器计算(Serverless)的好处,类似于AWS的Lambda计算。
# 产品优势
统一消息中台能力
ADMQ统一消息底座可作为企业统一的消息中台,提供多协议接入、多租户隔离、统一管控、跨地域复制等能力,实现消息基础设施的统一建设和共享使用。
全局动态配置
提供统一的可视化界面,管理租户、命名空间、主题的创建和销毁,并分配用户相应的使用权限,保证用户的数据安全。
队列和流模型统一
ADMQ提供了统一的消息模型和API,做到了队列模型和流模型的统一。在主题级别只需保存一份数据,可被多次消费,为用户提供了更多灵活性。
高效运维
拥有管控一体的可视化平台,提供服务可视化部署,简化部署流程,集群资源实现多维度监控告警功能,为实施运维带来简单快捷的操作方式。
多租户隔离
提供多租户间隔离机制,保证租户之间互不干扰,保障用户隐私,同时对每个租户的资源进行管理监控,实时查看生产消费情况。
全面适配信创环境
可稳定高效运行在国产操作系统与硬件架构体系上,其中操作系统包含:UOS、华为OpenEuler、麒麟V10、中科方德等;硬件体系包含:飞腾、鲲鹏、兆芯、海光等平台。
# 应用场景
企业统一消息中台
对于大型企业和组织,业务系统众多、消息协议各异、管理分散。ADMQ统一消息底座可作为企业统一的消息中台,实现消息基础设施的统一建设和共享使用。
跨地域数据同步
通过跨地域复制功能,ADMQ可在多个数据中心之间实现消息同步和共享,满足企业异地多活、灾备恢复等需求。
大规模物联网平台
ADMQ统一消息底座适用于大规模物联网数据采集和处理场景,支持海量设备接入、高并发消息处理和实时数据分发。
复杂事件处理
借助内置轻量级计算引擎,ADMQ可实现实时数据预处理、事件路由、数据转换等复杂事件处理需求。
# ADMQ专用化引擎系列
# 产品定位
ADMQ专用化引擎系列是金蝶天燕针对企业信创替代和开源消息替换需求推出的专用化消息引擎。该系列包含ADMQ for Kafka、ADMQ for RocketMQ、ADMQ for RabbitMQ、ADMQ for ActiveMQ、ADMQ for MQTT五种消息引擎,分别面向不同的开源消息产品用户群体。
该系列产品在保持原生协议兼容性的基础上,进行了企业级增强和信创适配,提供安全认证、权限控制、可视化管控、运维监控、性能优化等商业能力,帮助企业以最低改造成本、最高效的方式完成信创环境下的消息中间件替代。
# 核心功能
| 功能 | 功能说明 |
|---|---|
| 原生协议兼容 | 完整兼容对应消息产品的原生协议、客户端和API,业务系统无需修改代码即可完成迁移。 |
| 企业级安全 | 支持身份认证、ACL访问控制、TLS/国密SSL传输加密、审计日志等企业级安全能力。 |
| 高可用增强 | 支持主从复制、多副本、自动故障转移等高可用机制。 |
| 可视化管控 | 提供统一的Web管控台,支持集群管理、资源管理、消息查询、监控告警等功能。 |
| 性能优化 | 针对信创环境和企业应用场景进行性能调优,提供最佳实践指导。 |
| 信创适配 | 适配主流信创操作系统、芯片、数据库和中间件生态。 |
| 多语言客户端 | 支持Java、Go、Python、C++、.NET、Node.js等多种语言客户端。 |
# 产品组成
# ADMQ for Kafka
面向Kafka用户的高吞吐流式消息解决方案,支持:
- 完整兼容Kafka生产消费协议、分区分配协议、Offset管理协议等。
- 支持Kafka原生客户端(2.x-3.x版本)及生态工具。
- 支持主题分区、副本机制、消费者组、消息压缩、Offset提交等核心特性。
- 适用于日志采集、数据同步、流式处理等高吞吐场景。
# ADMQ for RocketMQ
面向RocketMQ用户的高可靠金融级消息解决方案,支持:
- 完整兼容RocketMQ生产消费协议、NameServer路由协议、消息存储协议等。
- 支持顺序消息、事务消息、定时/延时消息、广播消费、消息轨迹等核心特性。
- 支持主从复制、DLedger多副本等高可用机制。
- 适用于金融交易、订单处理、分布式事务等高可靠场景。
# ADMQ for RabbitMQ
面向RabbitMQ用户的灵活路由消息解决方案,支持:
- 完整兼容AMQP 0-9-1协议,支持Java、Python、Go、Node.js等官方客户端。
- 支持Direct、Fanout、Topic、Headers等多种交换器类型。
- 支持Classic、Quorum、Stream等多种队列类型。
- 适用于灵活路由、异步解耦、削峰填谷等场景。
# ADMQ for ActiveMQ
面向ActiveMQ用户的传统JMS消息解决方案,支持:
- 完整兼容JMS规范,支持队列(Queue)和主题(Topic)两种消息模型。
- 支持JMS 1.1/2.0规范,兼容传统Java EE应用。
- 适用于传统企业应用、Java EE系统迁移等场景。
# ADMQ for MQTT
面向物联网和移动互联网场景的轻量级消息解决方案,基于EMQX企业级增强,支持:
- 完整兼容MQTT 3.1、3.1.1、5.0协议,支持海量MQTT客户端接入。
- 支持发布/订阅模型、QoS 0/1/2消息质量等级、遗嘱消息、保留消息、会话保持等核心特性。
- 支持MQTT over WebSocket、MQTT over SSL/TLS、MQTT over QUIC等多种接入方式。
- 支持规则引擎、数据桥接、消息持久化、集群部署等高可用能力。
- 支持无状态节点集群与故障自动恢复,提供高可用与水平扩展能力。
- 适用于物联网平台、车联网、移动消息推送、智能设备管理等场景。
# 产品功能架构
ADMQ专用化引擎系列采用各消息产品对应的企业级增强架构,在原生协议兼容层之上,统一提供安全认证、权限控制、可视化管控、监控告警、运维管理等企业级能力。
各产品均包含以下核心组件:
- 消息引擎:负责消息的路由、存储、转发和消费,完整实现对应消息产品的核心协议。
- NameServer/Broker/节点:提供消息服务节点,支持集群部署和高可用。
- 企业级安全层:提供统一认证、ACL授权、TLS/国密SSL加密等安全能力。
- 可视化管控台:提供集群管理、资源管理、消息查询、监控告警等功能。
- 运维监控体系:提供Prometheus指标导出、日志管理、告警通知等运维能力。
# 主要功能
# 原生协议接入
ADMQ专用化引擎系列完整实现对应消息产品的核心协议,支持原生客户端直接接入:
- Kafka协议:支持PLAINTEXT、SSL、SASL_PLAINTEXT、SASL_SSL等安全协议。
- RocketMQ协议:支持Remoting协议、gRPC协议、MQTT协议、HTTP协议等。
- AMQP协议:支持AMQP 0-9-1协议、SSL/TLS加密、SASL认证等。
- MQTT协议:支持MQTT 3.1/3.1.1/5.0协议、MQTT over WebSocket、MQTT over SSL/TLS、MQTT over QUIC等接入方式。
- JMS协议:支持JMS 1.1/2.0规范,兼容传统Java EE应用。
# 企业级安全
- 身份认证:支持用户名密码、AK/SK、SASL/PLAIN、SCRAM等多种认证方式。
- 访问控制:支持ACL访问控制、RBAC角色管理、Vhost/命名空间隔离。
- 传输加密:支持TLS/SSL和国密SSL加密传输。
- 审计日志:记录所有管理操作和关键消息操作,满足合规要求。
# 高可用机制
| 产品 | 高可用机制 |
|---|---|
| ADMQ for Kafka | 多副本机制、ISR同步、Leader选举、Controller管理 |
| ADMQ for RocketMQ | 主从复制、DLedger多副本、NameServer集群 |
| ADMQ for RabbitMQ | 镜像队列、Quorum Queue、Stream Queue多副本 |
| ADMQ for ActiveMQ | Master/Slave主从、Network of Brokers |
| ADMQ for MQTT | 无状态节点集群、故障自动恢复、水平扩展 |
# 可视化管控
- 集群管理:创建、监控、管理消息集群节点。
- 资源管理:管理Topic、Queue、Exchange、Vhost、消费者组等资源。
- 消息查询:按时间、Key、ID等条件查询消息,支持消息轨迹追踪。
- 监控告警:实时查看集群状态、性能指标、消息堆积、消费延迟等。
- 系统管理:License管理、用户管理、操作日志、配置管理。
# 监控运维
- Prometheus指标导出。
- Grafana仪表盘集成。
- 日志管理和审计。
- 告警规则和通知。
- 健康检查和自动恢复。
# 技术特性
# 零改造迁移
ADMQ专用化引擎系列完整兼容对应消息产品的协议和客户端,业务系统无需修改代码,仅需变更连接地址即可完成迁移,迁移成本趋近于零。
# 生态无缝复用
兼容对应消息产品的原生工具、监控系统和数据同步工具,企业无需额外适配开发,即可复用原有技术积累和运维体系。
# 信创环境深度适配
适配主流信创操作系统(麒麟、统信等)、信创芯片(ARM、RISC-V、x86等),兼容信创数据库及中间件生态,满足政企信创项目落地要求。
# 轻量化部署
ADMQ专用化引擎系列采用轻量化架构,资源占用低,部署简单,可快速在物理机、虚拟机、容器环境中部署运行。
# 稳定可靠运行
通过多副本、主从复制、自动故障转移等机制,保障消息服务的高可用性和数据可靠性。
# 产品优势
协议原生兼容
完整实现对应消息产品的核心协议,行为与原生产品一致,确保业务系统平滑迁移。
企业级增强
在原生能力基础上,增加安全认证、权限控制、审计日志、传输加密、高可用增强等企业级能力。
信创合规
全面适配信创软硬件生态,支持国密算法,满足政企信创和安全合规要求。
统一管控
提供统一的Web管控台,实现不同消息产品的统一管理和监控。
专业服务支持
金蝶天燕提供专业的技术支持、培训服务和咨询服务,保障企业顺利使用和运维。
# 应用场景
开源消息产品替代
在政府、金融、电信等行业的信创改造过程中,企业需要将原有开源消息中间件替换为安全可控的商业产品。ADMQ专用化引擎系列提供与开源产品原生兼容的替代方案,无需改造业务代码。
信创环境建设
ADMQ专用化引擎系列全面适配信创操作系统、芯片和中间件生态,帮助企业构建自主可控的消息基础设施。
大数据流处理
ADMQ for Kafka可无缝对接大数据生态,支持Flink、Spark Streaming、Storm等流式计算引擎,广泛应用于日志收集、数据采集、实时计算等场景。
金融级可靠消息
ADMQ for RocketMQ支持事务消息、顺序消息、消息轨迹、死信队列等特性,满足金融行业对消息可靠性、一致性和可追溯性的严格要求。
灵活路由消息
ADMQ for RabbitMQ支持多种交换器类型和队列类型,适用于需要灵活路由和复杂业务规则的消息场景。
传统企业应用迁移
ADMQ for ActiveMQ完整兼容JMS规范,支持传统企业Java EE应用向信创环境平滑迁移。
物联网与移动消息
ADMQ for MQTT面向物联网和移动互联网场景,支持海量设备接入、低带宽网络传输、移动消息推送,广泛应用于车联网、工业互联网、智能家居、智慧能源等领域。
# 产品对比
# ADMQ两种产品形态对比
| 对比维度 | ADMQ统一消息底座 | ADMQ专用化引擎系列 |
|---|---|---|
| 产品形态 | 统一消息平台 | 专业化消息中间件 |
| 部署架构 | 计算存储分离 | 专用化原生架构 |
| 资源要求 | 较高,适合大规模部署 | 较低,适合轻量部署 |
| 扩展方式 | 存储层/计算层独立扩展 | 节点级横向扩展 |
| 适用规模 | 大型企业/平台化场景 | 部门级/系统级替代场景 |
| 协议支持 | 多协议统一接入 | 原生协议深度兼容 |
| 多租户 | 强多租户隔离 | 命名空间/Vhost隔离 |
| 跨地域复制 | 内置跨地域复制 | 通过工具/镜像实现 |
| 主要场景 | 统一消息中台、复杂平台 | 开源替代、信创替代 |
# ADMQ专用化引擎系列对比
| 产品 | 核心协议 | 典型特性 | 适用场景 |
|---|---|---|---|
| ADMQ for Kafka | Kafka协议 | 高吞吐、分区、消费者组 | 日志采集、流处理、数据同步 |
| ADMQ for RocketMQ | RocketMQ协议 | 事务消息、顺序消息、定时消息 | 金融交易、订单处理、分布式事务 |
| ADMQ for RabbitMQ | AMQP协议 | 灵活路由、多种交换器/队列 | 异步解耦、削峰填谷、复杂路由 |
| ADMQ for ActiveMQ | JMS协议 | 队列/主题、传统Java EE兼容 | 传统企业应用、Java EE迁移 |
| ADMQ for MQTT | MQTT协议 | 海量连接、QoS、规则引擎、数据桥接、无状态集群 | 物联网、车联网、移动推送 |
# 系统软硬件要求
# ADMQ统一消息底座
| 组件 | 最低要求 | 推荐配置 |
|---|---|---|
| CPU | 8核 | 16核及以上 |
| 内存 | 16GB | 32GB及以上 |
| 磁盘 | 500GB SSD | 1TB及以上SSD |
| 网络 | 10Gbps | 25Gbps |
| 操作系统 | CentOS 7+、Ubuntu 18.04+、麒麟、统信 | - |
# ADMQ专用化引擎系列
| 产品 | CPU | 内存 | 磁盘 | 操作系统 |
|---|---|---|---|---|
| ADMQ for Kafka | 4核+ | 8GB+ | 100GB SSD+ | CentOS 7+、Ubuntu 18.04+、麒麟、统信 |
| ADMQ for RocketMQ | 4核+ | 8GB+ | 100GB SSD+ | CentOS 7+、Ubuntu 18.04+、麒麟、统信 |
| ADMQ for RabbitMQ | 4核+ | 8GB+ | 100GB SSD+ | CentOS 7+、Ubuntu 18.04+、麒麟、统信 |
| ADMQ for ActiveMQ | 4核+ | 8GB+ | 100GB SSD+ | CentOS 7+、Ubuntu 18.04+、麒麟、统信 |
| ADMQ for MQTT | 4核+ | 8GB+ | 100GB SSD+ | CentOS 7+、Ubuntu 18.04+、麒麟、统信 |
注:以上为最低硬件标准。
# 软件环境
- 操作系统:UOS、Kylin、OpenEuler、Deepin、中科方德、CentOS、Ubuntu
- JDK:1.8+(RocketMQ/Kafka/ActiveMQ运行依赖)
# 性能规格
| 产品 | 部署规模 | 吞吐量 | 延迟 |
|---|---|---|---|
| ADMQ统一消息底座 | 单集群 | 10万+ QPS | 低延迟 |
| ADMQ for Kafka | 3节点集群 | 50万+ 条/秒 | P99 < 5ms |
| ADMQ for RocketMQ | 3节点集群 | 30万+ 条/秒 | P99 < 3ms |
| ADMQ for RabbitMQ | 3节点集群 | 20万+ 条/秒 | P99 < 1ms |
| ADMQ for ActiveMQ | 3节点集群 | 10万+ 条/秒 | P99 < 5ms |
| ADMQ for MQTT | 3节点集群 | 100万+ 连接 | 毫秒级消息时延 |
# 客户案例
# 系统解耦
# 某计费平台
# 背景
某计费平台汇集国内外主流支付渠道,提供账户管理、精准营销、安全风控、稽核分账、计费分析等多维度服务。平台承载了每天数亿收入大盘,为180+个国家(地区)、万级业务代码、100W+结算商户提供服务,托管账户总量300多亿,是一个全方位的一站式计费平台。
交易引擎作为计费平台最核心的系统,每笔交易订单数据需要被几十个下游业务系统关注,包括物品批价、道具发货、积分、流计算分析等等,多个系统对消息的处理逻辑不一致,单个系统不可能去适配每一个关联业务。此时,ADMQ可实现高效的异步通信和应用解耦,确保业务的连续性。
# 解决方案
某计费平台覆盖80+特点各异的渠道,300+不同业务逻辑,单个支付逻辑常横跨众多不同的内外部系统,调用链路比较长,异常出现的概率相对也会比较大,特别是网络超时(比如海外支付业务)。
通过消息队列、消息到期重发,从断点开始继续执行整个交易事务,保证每日亿级交易请求的一致性。
借助ADMQ的实时管理能力以及流式计算框架对计费流水进行实时对账和监控,共同保证整个交易的时效性和一致性。
# 削峰填谷
# 某电商网站
# 背景
某电商网站新手机发布在即,拥有预约码的用户可优先购买手机。预约方式为:注册账户即可获得预约码,预计预约用户超过1000万。
像双11秒杀、手机预约抢购等对IO时延敏感业务环境下,当外部请求超过系统处理能力时,如果系统没有做相应保护,可能由于历史累计的超时请求负荷过多而导致系统处理的每个请求都因超时而无效,系统对外呈现的服务能力为0,且这种情况下服务不能自动恢复。
# 解决方案
引入消息中间件,将非即时处理的业务逻辑进行异步化。例如服务接收请求、处理请求和返回请求三个不同的业务逻辑。
当预约活动开始时,海量并发访问汹涌袭来:
- 所有客户的预约申请,页面均立即返回成功。客户便可关闭网页进行其他活动。预约码稍后推送到客户的邮箱/手机;
- 超过千万级别的注册、预约申请,先暂存在消息队列集群;
- 后端服务进行处理,按照数据库实际的select、insert、update能力处理注册、预约申请;
- 处理成功后返回结果给用户。预约结束后,用户大约在5-30min内,都收到了预约码。
# 物联网
# 电网智能传感
# 背景
电网智能传感场景主要基于与电网公司合作的输电线路智能多参数传感器集成研究项目。该项目的传感器来自不同的厂家,分布在输电线路的各个位置,传感器类型因此也不尽相同,包括杆塔、杆塔上、输电线路侧等十多种。整个系统目前接入总长度约六百公里,包含六百多个杆塔的输电线路传感器。这一场景主要负责对各种传感器的数据进行在线监测和告警,同时,我们也单独针对电压传感器做了暂态电压分析。
这个应用场景有两个难点:一是来自不同厂商的传感器没有统一的通信协议,有的使用电力相关的IEC104规约,有的使用protobuf或其他厂商自定义协议;二是项目数据量比较大,有些传感器可能会单次产生20MB甚至更大的消息,有些传感器则每秒上传一次数据。
# 解决方案
借助ADMQ,我们选择在producer端不做任何数据处理,直接将数据转发到ADMQ中,再通过ADMQ Functions做进一步的数据预处理和其他业务操作。以电压传感器为例,电压传感器会产生三类数据,分别是心跳数据、稳态波形数据和暂态波形数据。其中心跳数据和稳态波形数据通过protobuf协议传输,暂态数据则通过zip压缩文件的形式传输。接收到protobuf的数据后,借助ADMQ Functions进行一系列的数据处理,包括通过解密function完成数据解密和protobuf的反序列化,再对数据进行路由,通过对应的ETL function做数据处理和解析,最后通过Schema Mapping将数据入库。
# 信创替代
在政府、金融、电信、能源等关键行业,ADMQ专用化引擎系列帮助企业将原有开源消息中间件替换为安全可控、自主可控的国产商业产品,支持信创操作系统、芯片和中间件生态,满足企业合规要求。