Redis做消息队列与Kafka对比

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/flyfeifei66/article/details/85322205

鉴于本人对两个组件的熟悉程度和理解,这里不做全面的对比,仅依据实际工作情况,做一些自己遇到的特性对比。

  1. 首先都可以做队列,且可以支持多个队列。redis是多个key,kafka是建多个topic。
  2. 都有持久化,部署都很简单。
  3. redis使用起来简单,编码也简单;kafka略复杂,但也不是很复杂。
  4. kafka可以集群,redis也可以集群。
  5. kafka的一个队列可以有多个分片/子队列,redis不能。redis可以通过客户端负载到多个集群,进而变相实现单队列拆分成多个小队列。kafka是专业的MQ组件,redis不是。
  6. 两者都没有消息消费确认机制,貌似只有rabbitmq有?且rabbitmq独有RPC功能?

消息量不大,可以使用redis做mq,如果量特别大,还是kafka合适,否则redis有可能扛不住被击穿。另外kafka好像比较适合大吞吐量的消息,例如系统日志,kafka+elk是经典的日志收集系统。

猜你喜欢

转载自blog.csdn.net/flyfeifei66/article/details/85322205