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 is a distributed, partitiononed,replicated commited logservice. kafka是一个分布式的、易扩展的、安全性高的消息服务系统。kafka提供了类似于JMS的特性,但在设计实现上又完全不同,它并不是基于JMS规范实现的(kafka的实现不包含事务特性性)。kafka对消息的保存时以Topic进行归类的,向Topic发送消息的称谓Producer,从Topic接受消息的称谓Consumer。kafka集群由多个service组成,每个service在kafka集群中被称作broker。kafka集群的作用就是存储从Producer发过来的消息,然后按照一定的规则将消息发送给Consumer。无论是kafka集群本身,还是Producer 或者Consumer,均依赖于zookeeper来管理集群中的信息同步。