redis 的消息队列 VS kafka
2017-10-15 14:32
344 查看
redis push/pop VS pub/sub
(1)push/pop每条消息只会有一个消费者消费,而pub/sub可以有多个
对于任务队列来说,push/pop足够,但真的在做分布式消息分发的时候,还是pub/sub吧。
(2)从编程角度看,pub/sub中sub通道需要保持长连接,而push/pop, pop需要Consumer进程定时去刷新。
前者可以满足实时要求,但是对编程架构有要求,而后者在实时性上有缺陷,但是对编程架构要求较低。
redis VS kafka
(1)redis是内存数据库,只是它的list数据类型刚好可以用作消息队列而已
kafka是消息队列,消息的存储模型只是其中的一个环节,还提供了消息ACK和队列容量、消费速率等消息相关的功能,更加完善
(2)redis 发布订阅除了表示不同的 topic 外,并不支持分组
kafka每个consumer属于一个特定的consumer group(default group), 同一topic的一条消息只能被同一个
consumer group内的一个consumer消费,但多个consumer group可同时消费这一消息。
(3) 处理数据大小的级别不同
参考:
kafka 介绍
(1)push/pop每条消息只会有一个消费者消费,而pub/sub可以有多个
对于任务队列来说,push/pop足够,但真的在做分布式消息分发的时候,还是pub/sub吧。
(2)从编程角度看,pub/sub中sub通道需要保持长连接,而push/pop, pop需要Consumer进程定时去刷新。
前者可以满足实时要求,但是对编程架构有要求,而后者在实时性上有缺陷,但是对编程架构要求较低。
redis VS kafka
(1)redis是内存数据库,只是它的list数据类型刚好可以用作消息队列而已
kafka是消息队列,消息的存储模型只是其中的一个环节,还提供了消息ACK和队列容量、消费速率等消息相关的功能,更加完善
(2)redis 发布订阅除了表示不同的 topic 外,并不支持分组
kafka每个consumer属于一个特定的consumer group(default group), 同一topic的一条消息只能被同一个
consumer group内的一个consumer消费,但多个consumer group可同时消费这一消息。
(3) 处理数据大小的级别不同
参考:
kafka 介绍
相关文章推荐
- Redis实现消息队列
- 基于Redis实现分布式消息队列(3)
- redis消息队列
- redis 消息队列发布订阅模式spring boot实现
- Redis实现简单消息队列
- 利用Redis 实现消息队列
- redis实现消息队列&发布/订阅模式使用
- spring mvc redis消息队列
- 消息队列结合Redis
- pthreads(二)pthreads结合redis实现消息队列
- Redis消息队列示例
- 深入理解redis分布式锁和消息队列
- 用redis实现消息队列
- redis 消息队列
- PHP使用Redis实现消息队列
- phpredis提高消息队列的实时性方法
- 利用Redis 实现消息队列
- PHP消息队列实现及应用:流量削峰案列(Redis的List类型实现秒杀)
- Redis 消息队列运用
- PHP中利用redis实现消息队列处理高并发请求