【RocketMQ精通之路】对比RocketMQ和ActiveMQ和Kafka

来自官网:

RocketMQ · 官方网站 | RocketMQ

|------------|--------------------------------------------|-------------------------------------------|------------------------------------|
| 产品 | ActiveMQ | Kafka | RocketMQ |
| 客户端SDK | Java, .NET, C++ etc. | Java, Scala etc. | Java, C++, Go |
| 特点 | Push模式,支持 OpenWire, STOMP, AMQP, MQTT, JMS | Pull模式,支持TCP | Pull 模式, 支持TCP, JMS, OpenMessaging |
| 顺序消息 | 独占消费者或独占队列可以确保排序 | 确保消息在分区内的顺序 | 严格确保消息的顺序,并且可以优雅地扩展 |
| 定时消息 | 支持 | 不支持 | 支持 |
| 批量消息 | 不支持 | 支持,与异步生产者 | 支持,具有同步模式以避免消息丢失 |
| 广播消息 | 支持 | 不支持 | 支持 |
| 消息过滤器 | 支持 | 支持,可以使用Kafka Streams过滤消息 | 支持基于SQL92的属性筛选器表达式 |
| 服务器触发的重新分发 | 不支持 | 不支持 | 支持 |
| 消息存储 | 使用JDBC和高性能日志(如levelDB、kahaDB)支持非常快速的持久性 | 高性能文件存储 | 高性能、低延迟的文件存储 |
| 消息追溯 | 支持 | 支持的偏移量指示 | 支持的时间戳和偏移量二表示 |
| 消息优先级 | 支持 | 不支持 | 不支持 |
| 高可用性和故障保护 | 支持,取决于存储,如果使用levelDB,则需要ZooKeeper服务器 | 支持,需要ZooKeeper服务器 | 支持,主从式,无需其他套件 |
| 消息跟踪 | 不支持 | 不支持 | 支持 |
| 配置 | 默认配置为低级别,用户需要优化配置参数 | Kafka使用键值对格式进行配置。这些值可以从文件中提供,也可以通过编程方式提供。 | 开箱即用,用户只需注意几个配置 |
| 管理和操作工具 | 支持 | 支持,使用终端命令暴露核心指标 | 支持丰富的web和终端命令,以公开核心指标 |

相关推荐
山甫aa5 小时前
锁一篇搞定:乐观锁、悲观锁、CAS、数据库锁与分布式锁【从零开始的 Web 后端学习】
java·数据库·分布式·后端·学习·web
严肃小白兔1 天前
Cloudflare Durable Objects 支持自动重试:分布式调用如何避免重复执行?
分布式
用户3610588626121 天前
深度拆解 Kafka 源码:Producer 构造器装配了哪些核心组件
kafka
方方洛1 天前
ray教程-27-附录F-RayClient与runtime_env与多语言
人工智能·分布式·机器学习
阿里云云原生2 天前
RocketMQ 和 Higress 荣获“直通乌镇”全球互联网大赛开源先锋社区奖
rocketmq
知识搬运临时工2 天前
Kafka 发 1 GiB 数据,用户态 CPU 只花 0.016 秒,总耗时反而慢了 11%
后端·kafka
方方洛2 天前
ray教程-25-附录E-端到端实战案例
人工智能·分布式·机器学习
一条泥憨鱼3 天前
【消息队列】ACK确认了什么:消息队列可靠投递的完整链路
java·后端·kafka·消息队列·rabbitmq
斯普信专业组3 天前
Kafka 消费者 poll() 流程与原理详解
kafka·流程图