【问题标题】:What is the Kafka Connect connector thread purpose?Kafka Connect 连接器线程的用途是什么?
【发布时间】:2021-10-01 18:16:20
【问题描述】:

试图弄清楚 Kafka Connect 中的消费者群体。

当我创建连接器时,实际上会在后台创建一个消费者组,对吗?
但是,当您转到实际的 API 并在连接器上执行获取请求时,您将能够看到连接器实际上是一个具有状态的线程(因此它可能会失败)。

我的问题是 - 这个线程的目的是什么?我确信消费者组(和连接器)只是一个逻辑组件......

【问题讨论】:

    标签: apache-kafka apache-kafka-connect


    【解决方案1】:

    创建连接器不一定会创建消费者组。消费者群体与您的其他问题并没有真正相关,因此我将重点回答 “Kafka Connect 连接器线程的用途是什么?”


    当 Kafka Connect 启动一个连接器时,它首先启动一个“连接器”线程。这是您在图片中突出显示的条目。

    连接器线程有多种职责:

    • 管理任务配置。这包括验证、为每个任务生成配置以及在请求时重新配置。

    • 处理全局状态。 Connect 运行时确保连接器线程的单个实例运行,因此它可用于执行应该执行一次的操作。例如,在 MirrorMaker2 中,连接器线程定期列出源集群中的主题。如果它检测到新主题,它会重新配置任务以镜像它。

    查看Connector API中的相关方法。

    一旦连接器线程运行,Connect 运行时就可以使用它来生成任务配置和启动任务。任务线程负责在外部系统和 Kafka 之间复制数据。

    【讨论】:

    • 嗨,谢谢。什么时候连接器不是消费者组?我确信连接器只是消费者组的抽象。
    • 为什么连接器会是一个消费者组?你在哪里看到这个?你确定你在谈论连接器?例如,如果您有一个源连接器将数据从数据库导入 Kafka,为什么要使用消费者组,它只能运行生产者!
    • 哦,对了,我说的是Sink Connectors,他们不总是形成一个消费群体吗?此处选择的答案(第 2 条)-stackoverflow.com/questions/41720037/…
    • @omerbarlev Sink 连接器可以,是的,但这与您最初提出的问题并不真正相关
    • 确实,这只是我在回答之后的另一个问题,因为我很惊讶。
    猜你喜欢
    • 2021-01-13
    • 2019-06-17
    • 2020-08-05
    • 2019-11-08
    • 2019-04-24
    • 2020-08-26
    • 2020-01-15
    • 2019-07-15
    • 2013-02-11
    相关资源
    最近更新 更多