Kafka vs RabbitMQ vs RocketMQ

KafkaKafka 是 LinkedIn于 2010 年 12 月开发并 开源的分布式发布-订阅消息系统, 目前归属于 Apache 顶级项目,是一个高性能跨语言分布式 Publish/Subscribe 消息队列系统。 Kafka 主要特点是基于 Pull 的模式来处理消息消费; 追求高吞吐量,在一台普通的服务器上既可以达到 10W/s 的吞吐速率; 一开始的目的就是用于日志收集和传输,所以实现了消息顺序和海量堆积。 0.8版本开始支持复制, 不支持事务, 对消息的重复、 丢失、 错误没有严格要求,
摘要由CSDN通过智能技术生成

Kafka

Kafka 是 LinkedIn于 2010 年 12 月开发并 开源的分布式发布-订阅消息系统, 目前归属于 Apache 顶级项目,是一个高性能跨语言分布式 Publish/Subscribe 消息队列系统。 Kafka 主要特点是基于 Pull 的模式来处理消息消费; 追求高吞吐量,在一台普通的服务器上既可以达到 10W/s 的吞吐速率; 一开始的目的就是用于日志收集和传输,所以实现了消息顺序和海量堆积。 0.8版本开始支持复制, 不支持事务, 对消息的重复、 丢失、 错误没有严格要求, 适合产生大量数据的互联网服务的数据收集业务。
Kafka 自身服务与消息的生产和消费都依赖与 Zookeeper,使用 Scala 语言开发。因为其消息的消费使用客户端 Pull 方式,消息可以被多个客户端消费,理论上消息会重复,但是不会丢失(除非消息过期)。因此比较常用的场景是作为日志传输的消息平台。

RabbitMQ

RabbitMQ 是基于 Erlang 语言编写的开源消息队列,通过 Erlang 的 Actor 模型实现了数据的稳定可靠传输, 基于 AMQP 协议来实现。 AMQP 的主要特征是面向消息、 队列、 路由(包括点对点和发布/订阅) 、 可靠性、 安全。 AMQP 协议更多用在企业系统内, 对数据一致性、 稳定性和可靠性要求很高的场景, 对性能和吞吐量的要求还在其次。官方推荐,如果仅仅是使用 RabbitMQ 的话,建议使用 AMQP 0-9-1 的协议。不过,因为其可扩展性,可以通过插件的形式使用 STOMP、XMPP、AMQP 1.0,还可以通过插件使用 HTTP 这种非消息的传输协议。所以,RabbitMQ 可

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值