Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache kafka 在独立模式与分布式模式下运行单个kafka s3接收器连接器_Apache Kafka_Apache Kafka Connect - Fatal编程技术网

Apache kafka 在独立模式与分布式模式下运行单个kafka s3接收器连接器

Apache kafka 在独立模式与分布式模式下运行单个kafka s3接收器连接器,apache-kafka,apache-kafka-connect,Apache Kafka,Apache Kafka Connect,我有一个带有10个分区的卡夫卡主题“mytopic”,我想用它将记录接收到一个S3存储桶中。出于扩展目的,它应该在多个节点上运行,以便将分区数据并行写入同一个S3存储桶 在Kafka connect和其他许多博客/教程中,建议以分布式模式而不是独立模式运行workers,以实现更好的可扩展性和容错性: 。。。分布式模式在可伸缩性方面更加灵活,并提供了高可用性服务的附加优势,以最大限度地减少停机时间 我想知道为我的用例选择哪种模式:在多个节点上并行运行一个逻辑连接器。我的理解如下: 如果我在分布式

我有一个带有10个分区的卡夫卡主题“mytopic”,我想用它将记录接收到一个S3存储桶中。出于扩展目的,它应该在多个节点上运行,以便将分区数据并行写入同一个S3存储桶

在Kafka connect和其他许多博客/教程中,建议以分布式模式而不是独立模式运行workers,以实现更好的可扩展性和容错性:

。。。分布式模式在可伸缩性方面更加灵活,并提供了高可用性服务的附加优势,以最大限度地减少停机时间

我想知道为我的用例选择哪种模式:在多个节点上并行运行一个逻辑连接器。我的理解如下:

  • 如果我在分布式模式下运行,我将只有一个工作进程处理所有分区,因为它被认为是一个连接器任务
  • 相反,我应该在多个节点中以独立模式运行。在这种情况下,我将拥有一个消费者组,并实现分区的并行处理
  • 在上面描述的独立场景中,我实际上具有容错能力:如果一个实例死亡,使用者组将重新平衡,其他独立工作人员将处理释放的分区
  • 我的理解是正确的还是遗漏了什么


    不幸的是,除了作者得出与我相同的结论之外,我找不到关于这个主题的更多信息。

    理论上,这可能会起作用,但最终你会通过ssh连接到多台机器,拥有基本相同的配置文件,只需不使用
    connectdistributed
    命令,而使用
    connectstandalone

    但是,您缺少关于连接服务器任务重新平衡的部分,该部分通过连接服务器REST端口进行通信


    底层任务代码都是相同的,只是入口点和偏移存储不同。那么,如果您有多台机器,为什么不使用分布式呢

    您不需要运行独立流程的多个实例,Kafka工作人员在分布式模式下负责分配任务、重新平衡、偏移管理,您需要指定相同的组id…

    我的第一点呢?是否会有任何并行处理,或者我只有一个工作人员来完成所有工作?如果您运行多个服务器,那么任务将分布在它们之间。它的工作原理与普通消费者群体没有什么不同