分布式官方Mongodb Kafka源连接器,多个任务不工作

分布式官方Mongodb Kafka源连接器,多个任务不工作,mongodb,apache-kafka,apache-kafka-connect,changestream,mongodb-kafka-connector,Mongodb,Apache Kafka,Apache Kafka Connect,Changestream,Mongodb Kafka Connector,我在我的Windows机器上运行ApacheKafka,有两个Kafka连接工作程序(端口80838084),一个主题有三个分区(一个分区的复制)。 我的问题是,每当我关闭其中一个Kafka Connect worker时,我能够看到故障转移到另一个Kafka Connect worker,但是负载平衡没有发生,因为任务的数量总是一个。 我使用官方MongoDB Kafka连接器作为tasks.max=6的源(ChangeStream)。 我尝试用多个线程更新MongoDB,这样它就可以将更多数

我在我的Windows机器上运行ApacheKafka,有两个Kafka连接工作程序(端口80838084),一个主题有三个分区(一个分区的复制)。 我的问题是,每当我关闭其中一个Kafka Connect worker时,我能够看到故障转移到另一个Kafka Connect worker,但是负载平衡没有发生,因为任务的数量总是一个。 我使用官方MongoDB Kafka连接器作为tasks.max=6的源(ChangeStream)。 我尝试用多个线程更新MongoDB,这样它就可以将更多数据推送到Kafka Connect,并可能使Kafka Connect创建更多任务。即使在数据量更大的情况下,任务数仍然是1

我如何确认只有一个任务正在运行?这是通过api实现的”http://localhost:8083/connectors/mongodb-连接器/状态“: 答复:

{
“名称”:“mongodb连接器”,
“连接器”:{
“状态”:“正在运行”,
“工人id”:“xx.xx.xx.xx:8083”
}
“任务”:[
{
“id”:0,
“状态”:“正在运行”
“工人id”:“xx.xx.xx.xx:8083”
}
],
“类型”:“来源”
}

我是不是遗漏了什么?为什么没有创建更多任务?

这似乎是官方MongoDB Kafka源代码连接器的行为。这是我在另一个论坛上从Ross Lawley(MongoDB开发者)那里得到的答案:

在1.2.0之前,接收器连接器仅支持单个任务。 源连接器仍然只支持单个任务,这是因为它使用单个变更流游标。这足以监视和发布集群范围、数据库范围或单个集合的更改

我提出这张罚单: 得到以下回应: 源连接器将只生成一个任务。 这是设计上的,因为源连接器由变更流支持。更改流在内部使用的数据与复制引擎使用的数据相同,因此应该能够像数据库一样进行扩展。 没有允许多个游标的计划,但是,如果您觉得这不符合您的需求,那么您可以配置多个连接器,每个连接器都有自己的变更流游标