- JMS规范
- 支持事务
- 支持XA协议
- 没有大规模支撑场景
- 社区维护越来越少
- erlang语言开发,性能好,高并发
- 支持多种语言,社区,文档方面有优势
- 不利于Java程序员二次开发
- 吞吐量单机在万级
- Java 实现
- 高可用,高可靠
- 支持语言较少
- 吞吐量单机十万
- Broker:服务节点
- Queue:用来存储消息,多个消费者可以同时订阅同一个队列
- Exchange:生产者将消息发送到交换机,由交换机决定将此消息路由到一个或多个key中
- Binding:维护交换机和Queue的多对多关系
- RoutingKey:路由key,生产者发消息的时候,一般会指定一个RoutingKey,用来指定这个消息的流向
- 信道:复用TCP连接
如何保证消息的发送和接受
- 发送发确认:信道回调,信道设置为/confirm/i模式,所有在信道上发布的消息都会分配一个唯一的ID
/confirm/iCallback:信息到达Exchange成功则进行回调 ReturnCallback:消息失败时调用kafka
- 高性能,高可用
- 生产环境有大规模使用场景
- 单机容量有限(超过64个分区响应明显变长)
- 社区更新慢
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)