【问题标题】:Kafka Connect Task spawn strategyKafka Connect 任务生成策略
【发布时间】:2020-07-08 14:57:35
【问题描述】:
我有一个关于 Kafka-Connect 的一般性问题。我浏览了文档、博客,但找不到直接的答案。
如果有两个工人,运行单个连接器(实例)然后
连接器(实例)如何决定何时生成新任务,例如。任务.max = 10?此外,连接器(实例)如何决定产生多少任务,例如。任务.max = 10?
它是否取决于底层硬件配置?例如。核心数或内存或 cpu 利用率?
【问题讨论】:
标签:
apache-kafka
apache-kafka-connect
confluent-platform
【解决方案1】:
确切的算法是 Kafka-Connect 内部的,但它通常与分区和主题的数量有关。因此,例如,如果您设置 tasks.max = 10 并具有以下接收器连接器配置:
1 topic, 1 partition - then Kafka connect will only spawn a single task
2 topics, 1 partition each - then Kafka connect will spawn 2 tasks, 1 for each topic
2 topics, 5 partitions each - then Kafka connection will spawn 10 tasks, 1 for each topic partition
4 topics, 5 partitions each - the Kafka connection will spawn 10 tasks, each handling data from 2 topic partitions.
在另一个论坛上得到了这个解释。