Kafka
Kafka
定义
Kafka传统定义:Kafka是一个分布式的基于发布/订阅模式的消息队列(Message Quque),主要应用于大数据实时处理领域。
发布/订阅:消息的发布者不会将消息直接发送给特定的订阅者,而是将发布的消息分为不同的类别,订阅者只接收感兴趣的消息。
Kafka最新定义:Kafka是一个开源的分布式事件流平台( Event StreamingPlatform),被数千家公司用于高性能数据管道、流分析、数据集成和关键任务应用。
传统消息队列的应用场景
传统的消息队列的主要应用场景包括:缓存/消峰、解耦和异步通信。
kafka基础架构
- 为方便扩展,并提高吞吐量,一个topic分为多个partition
- .配合分区的设计,提出消费者组的概念,组内每个消费者并行消费
- 为提高可用性,为每个partition增加若干副本,类似NameNode HA
- Zookeeper中记录谁是leader,kafka2.8后 可配置不采用ZK
ZooKeeper在Kafka中的作用
存储记录存储上下限的信息与每个分区下的leader副本
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 MyBlog!