【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和终端命令,以公开核心指标 |

相关推荐
Keep_Trying_Go1 小时前
accelerate 深度学习分布式训练库的使用详细介绍(单卡/多卡分布式训练)
人工智能·pytorch·分布式·深度学习
数据库知识分享者小北2 小时前
免费体验《自建 MySQL 迁移至 PolarDB 分布式 V2.0》
数据库·分布式·mysql·阿里云·云原生·polardb
ZePingPingZe3 小时前
@TransactionalEventListener:事务事件监听的艺术
分布式·spring·rabbitmq
回家路上绕了弯3 小时前
日志输出优化实战:从“能用”到“好用”的全攻略
分布式·后端
山沐与山4 小时前
【MQ】MQ消息队列幂等性设计与踩坑实战
java·开发语言·数据库·rocketmq
十月南城4 小时前
分布式事务方法论——2PC/TCC/SAGA与基于消息的最终一致性对照
分布式
笃行客从不躺平5 小时前
分布式中的CAP 复习
分布式
记得开心一点嘛6 小时前
分布式ID生成器
分布式
bkspiderx7 小时前
RabbitMQ 全面技术指南
分布式·消息队列·rabbitmq
小码吃趴菜7 小时前
线程同步-消息队列-互斥锁-补充两个面试问题
linux·分布式