RocketMQ、ActiveMQ、Kafka消息中间件对比

RocketMQ、ActiveMQ、Kafka消息中间件对比

消息产品 ActiveMQ Kafka RocketMQ
客户端SDK Java,.NET,C ++等 Java,Scala等 Java,C ++,Go
协议和规范 推送模型,支持OpenWire,STOMP,AMQP,MQTT,JMS 拉模型,支持TCP 拉模型,支持TCP,JMS,OpenMessaging
顺序消息 排他消费者或排他队列可以确保顺序 确保分区内消息的顺序 确保对消息进行严格排序,并可以正常扩展
定时消息 支持的 不支持 支持的
批处理消息 不支持 受支持,带有异步生成器 支持,具有同步模式,可避免消息丢失
广播消息 支持的 不支持 支持的
消息筛选器 支持的 支持,您可以使用Kafka Streams过滤消息 支持的基于SQL92的属性过滤器表达式
服务器触发的重新交付 不支持 不支持 支持的
消息储存 使用JDBC以及高性能日志(例如levelDB,kahaDB)支持非常快速的持久性 高性能文件存储 高性能和低延迟文件存储
消息追溯 支持的 支持的偏移量指示 支持的时间戳和偏移量两个表示
消息优先级 支持的 不支持 不支持
高可用性和故障转移 受支持,取决于存储,如果使用kahadb,则需要ZooKeeper服务器 受支持,需要ZooKeeper服务器 受支持的主从模式,无需其他套件
消息追踪 不支持 不支持 支持的
配置 默认配置为低级别,用户需要优化配置参数 Kafka使用键值对格式进行配置。这些值可以从文件或以编程方式提供。 开箱即用,用户只需要注意一些配置
管理和操作工具 支持的 支持,使用终端命令公开核心指标 受支持的富Web和终端命令可显示核心指标

参考

http://rocketmq.apache.org/docs/motivation/

你可能感兴趣的:(rocketmq)