Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/277.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
C# 使用N个分区创建Kafka主题_C#_Apache Kafka_Confluent Platform - Fatal编程技术网

C# 使用N个分区创建Kafka主题

C# 使用N个分区创建Kafka主题,c#,apache-kafka,confluent-platform,C#,Apache Kafka,Confluent Platform,我正在使用Confluent Kafka DotNet lib创建和生成主题: producer.ProduceAsync(topic, key, message); 当此主题不存在时,将使用one分区自动创建主题 但出于测试目的,我希望能够以编程方式创建一个带有N分区的主题 我在这里找不到任何示例(分支0.11.5),如何创建具有多个分区的主题 由于我已经在使用Docker,我发现在Docker compose中创建一个测试主题(有N个分区)是最简单的: zookeeper: i

我正在使用Confluent Kafka DotNet lib创建和生成主题:

producer.ProduceAsync(topic, key, message);
当此主题不存在时,将使用one分区自动创建主题

但出于测试目的,我希望能够以编程方式创建一个带有N分区的主题


我在这里找不到任何示例(分支0.11.5),如何创建具有多个分区的主题

由于我已经在使用Docker,我发现在Docker compose中创建一个测试主题(有N个分区)是最简单的:

  zookeeper:
    image: wurstmeister/zookeeper
    ports:
      - "2181:2181"

  kafka:
    image: wurstmeister/kafka
    ports:
      - "9092:9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME: kafka
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_CREATE_TOPICS: "PartitionsTest:3:1"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    links:
      - zookeeper
这将创建包含3个分区的主题“PartitionsTest”

警告:您的测试可能会在主题创建之前执行


一旦Confluent Kafka library的发行版中提供了管理功能,我可能会更新它以使用该方法。

应该有用,这是目前尚未发布的代码,但如果需要,是可能是一个不错的选择。如果不使用AdminClient,您只有以下两种选择:1)构建主分支或2)使用Zookeeper CLI命令将自己解决二进制主题创建协议请求