kafka

Posted 672530440

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kafka相关的知识,希望对你有一定的参考价值。

kafka架构:
生产者,消费者,Broker(接收生产者消息,给消费者订阅,),ZooKeeper(不是kafka的一部分,只是要使用ZooKeeper)。

Broker和ZooKeeper作为后台服务,生产者,消费者作为sdk,可以通过生产者的sdk发送数据给Broker,通过消费者的sdk从Broker中拿数据。

生产者push数据推给Broker,消费者通过pull拉从Broker拿数据。为了防止消费者不能处理过多的数据,因此是消费者去取而不是Broker推过去。

生产者如何知道将一条消息发送给那个Broker,消费者如何感知有哪些Broker,从哪个Broker取数据。

生产者会如何获取整个kafka的元信息:在0.8以前生产者需要通过Zookeeper来获取整个Broker集群的信息,0.8以后在实例化一个生产者的时候可以指定多个Broker的url,比如集群有300个Broker,可以只指定3个Broker的IP和端口给消费者,生产者就可以通过这3个Broker获知整个集群的Broker信息列表,生产者会将这些元信息存在内存当中,如果有某个Broker挂了,生产者需要重新更新Broker的信息。

消费者如何获取整个kafka的元信息:

 

以上是关于kafka的主要内容,如果未能解决你的问题,请参考以下文章

Kafka-文件管理

Flink实战系列Flink 1.14.0 消费 kafka 数据自定义反序列化器

kafkaThe group member needs to have a valid member id before actually entering a consumer group(代码片段

SpringCloud系列十一:SpringCloudStream(SpringCloudStream 简介创建消息生产者创建消息消费者自定义消息通道分组与持久化设置 RoutingKey)(代码片段

Camel-Kafka java.io.EOFException - NetworkReceive.readFromReadableChannel

在ansible模板中使用动态组名称