现有消息队列(MessageQueue)比较:
网站系统 <-- Flume集群 --> Kafka集群 --> strom集群 --> redis集群
Flume用于获取数据,Kafka用于缓存数据,strom用于处理,redis用于存储。
Kafka类似于JMS中间件,但是设计完全不一样,此外Kafka并不是JMS规范的实现。
Kafka对消息保存时根据Topic进行归类,发送者为Producer,接受者为Consumer。一个Kafka集群由多个Kafka实例(Server)组成,每个Server称为broker。
Kafka集群、Producer和Consumer都依赖于zookeeper保存元数据信息(meta信息),以保证系统可用性。
Kafka特性:
1. 同时为发布和订阅提供高吞吐量(每秒生产25万条数据(50M),每