首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >我们为什么学习RocketMQ

我们为什么学习RocketMQ

原创
作者头像
RookieCyliner
发布2025-06-02 15:09:23
发布2025-06-02 15:09:23
790
举报
文章被收录于专栏:RocketMQRocketMQ

1、前言

常见的MQ有ActiveMQ、KAFKA、RocketMQ;ActiveMQ IO随着队列和虚拟主题数量的增加,存在瓶颈;Kafka是一种流行的消息解决方案,但它不满足对低延迟和高可靠性的要求;RocketMq具有发布/订阅到高容量、实时、零错误事务系统,已成为金融级可靠业务消息的行业标准,广泛应用于互联网、大数据、移动互联网、物联网等领域;

2、常见MQ对比

RocketMQ 与 ActiveMQ 与 Kafka 的比较

消息产品

客户端 SDK

协议和规范

有序消息

定时消息

批量消息

广播消息

消息过滤器

服务器触发重试

消息存储

消息追溯

消息优先级

高可用性和故障转移

消息跟踪

配置

管理和操作工具

ActiveMQ

Java、.NET、C++ 等

推送模型,支持 OpenWire、STOMP、AMQP、MQTT、JMS

独占消费者或独占队列可以确保排序

支持

不支持

支持

支持

不支持

支持使用 JDBC 以及高性能日志(如 levelDB、kahaDB)进行非常快速的持久化

支持

支持

支持,取决于存储,如果使用 levelDB,则需要 ZooKeeper 服务器

不支持

默认配置级别较低,用户需要优化配置参数

支持

Kafka

Java、Scala 等

拉取模型,支持 TCP

确保分区内消息的排序

不支持

支持,使用异步生产者

不支持

支持,可以使用 Kafka Streams 过滤消息

不支持

高性能文件存储

支持偏移量指示

不支持

支持,需要 ZooKeeper 服务器

不支持

Kafka 使用键值对格式进行配置。这些值可以从文件或以编程方式提供。

支持,使用终端命令公开核心指标

RocketMQ

Java、C++、Go

拉取模型,支持 TCP、JMS、OpenMessaging

确保消息的严格排序,并且可以优雅地扩展

支持

支持,使用同步模式以避免消息丢失

支持

支持,基于 SQL92 的属性过滤器表达式

支持

高性能、低延迟文件存储

支持时间戳和偏移量两个指示

不支持

支持,主从模型,无需其他套件

支持

开箱即用,用户只需要关注一些配置

支持,丰富的 Web 和终端命令公开核心指标

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、前言
  • 2、常见MQ对比
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档