常见消息中间件对比
特性 |
ActiveMQ |
RabbitMQ |
Kafka |
RocketMQ |
所属公司 |
Apache |
Mozilla public license |
Apache |
Apache/ali |
成熟度 |
成熟 |
成熟 |
成熟 |
比较成熟 |
生产-消费者模式 |
支持 |
支持 |
支持 |
支持 |
发布-订阅 |
支持 |
支持 |
支持 |
支持 |
Request-reply |
支持 |
支持 |
- |
支持 |
API完整性 |
高 |
高 |
高 |
低(静态配置) |
多语言支持 |
支持java优先 |
语言无关 |
支持,java优先 |
支持 |
单机吞度量 |
万级(最差) |
万级 |
十万级 |
十万级(最高) |
消息延迟 |
- |
微妙级 |
毫秒级 |
- |
可用性 |
高(主从) |
高(主从) |
非常高(分布式) |
高 |
消息重复 |
- |
低 |
理论上不会丢失 |
- |
事务 |
支持 |
不支持 |
支持 |
支持 |
文档的完备性 |
高 |
高 |
高 |
中 |
提供快速入门 |
有 |
有 |
有 |
无 |
首次部署难度 |
- |
低 |
中 |
高 |
在大数据领域,一些重要的组件、框架都支持Apache kafka,不论成熟度、社区、性能、可靠性,kafka都是非常有竞争力的一款产品。