参考:http://www.infoq.com/cn/articles/apache-kafka?utm_campaign=infoq_content&utm_source=infoq&utm_medium=feed&utm_term=global
存储分布式(用zookeeper协调);
kafka代理,也称为broker,是集群,集群数据的协调和同步用的是zookeeper。
push vs pull
push:很难适应消费速率不同的消费者,经常出现的问题是拒绝服务和网络拥塞。
pull:可以简化broder的设计,并且consumer可以自己控制消费方式。
消息的可靠性保证:
at most once:可以丢失,但是不能重复传输;
at least once:消息不会丢失,但是可能重复传输(大多数场景,适合登幂的场景);
exactly once:肯定会传输但只有一次(适合交易型对数据的准确性极高的场景)
参考:http://www.infoq.com/cn/articles/kafka-analysis-part-1?utm_source=infoq&utm_medium=popular_widget&utm_content=homepage&utm_campaign=popular_content_list