进击的Kafka(一):基础入门

63 阅读1分钟

一、定义

kafka是一种分布式的,基于发布/订阅的消息队列

二、使用场景

  • 缓存/消峰:将数据放入消费队列中,然后慢慢消费
  • 解偶:允许独立扩展或者修改两边
  • 异步通信: 可以不立即处理

三、模式

1、点对点模式

2、发布/订阅模式

(1)、可以有多个Topic主题
(2)、消费后不会删除数据
(3)、每个消费者独立,都可以消费数据(一个Topic中的数据,可以重复被不同消费者消费)

四、基本架构

1、为了方便扩展,并提高吞吐量,一个Topic分为多个Partition
2、分区设计,使用消费者组,组内多个消费者并行消费(一个分区只能被一个消费者消费)
3、为提高可用性,一个Partition有若干副本(最少一个)
4、使用Zookeeper记录集群信息(2.8.0后可以不使用zk)