分类 kafka面试题 下的文章


撰写于    浏览:2561 次  分类: kafka面试题
1.Kafka的作用1)数据缓冲:将上游数据接收到消息队列中,暂时存放,下游服务可以按照自己的节奏进行处理。上游数据一旦有大量的突发流量,保证了下游服务不会受到影响。2)解耦以及扩展:将上游服务和下游服务通过消息队列进行通信。消息队列可以作为一个接口层,只要上游服务以及下游服务遵守接口的规范,便可以随意添加新的服务器。3)冗余及健壮性:一个消息被保[...]

撰写于    浏览:2046 次  分类: kafka面试题
ISR (In-Sync Replica)集合表示的是目前“可用”( alive)且消息量与Leader相差不多的副本集合,这是整个副本集合的一个子集。“可用” 和“相差不多”都是很模糊的描述,其实际含义是ISR集合中的副本必须满足下面两个条件:(1)副本所在节点必须维持着与ZooKeeper的连接。(2)副本最后一条消息的offset与Leade[...]

撰写于    浏览:1665 次  分类: kafka面试题
每个副本中包含的消息是一样的,但是在同一时刻,副本之间其实并不是完全一样的。

撰写于    浏览:3097 次  分类: kafka面试题
一个单独的Kafka Server就是一个Broker。Broker的主要工作就是接收生产者发过来的消息,分配offset,之后保存到磁盘中。同时,接收消费者、其他Broker的请求,根据请求类型进行相应处理并返回响应。在一般的生产环境中,一个Broker独占一台物理服务器。

撰写于    浏览:1734 次  分类: kafka面试题
在很多场景中,消息的key与value的值之间的对应关系是不断变化的,就像数据库中的数据会不断被修改一样,消费者只关心key对应的最新value值。此时,可以开启Kafka的日志压缩功能,Kafka会在后台启动一个线程,定期将相同key的消息进行合并, 只保留最新的value值。