看啥推荐读物
apache kafka大数据技术分享公众号。推送各种Kafka使用心得、实战攻略、会议PPT、技术博文等。Kafka博客:https://www.cnblogs.com/huxi2b/
今天看啥  ›  专栏  ›  大数据Kafka技术分享

关于Kafka producer管理TCP连接的讨论

大数据Kafka技术分享  · 公众号  ·  · 2018-12-13 11:06
    在Kafka中,TCP连接的管理交由底层的Selector类(org.apache.kafka.common.network)来维护。Selector类定义了很多数据结构,其中最核心的当属java.nio.channels.Selector实例,故所有的IO事件实际上是使用Java的Selector来完成的。本文我们探讨一下producer与Kafka集群进行交互时TCP连接的管理与维护。一、何时创建TCP连接    Producer端在创建KafkaProducer实例时就会创建与broker的TCP连接——这个表述严格来说不是很准确,应当这么说:在创建KafkaProducer实例时会创建并启动Sender线程实例。Sender线程开始运行时首先就会创建与broker的TCP连接,如下面这段日志所示:[2018-12-09 09:35:45,620] DEBUG [Producer clientId=producer-1] Initialize connection to node localhost:9093 (id: -2 rack: null) for sending metadata request (org.apache.kafka. ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照