c# - 创建具有 N 个分区的 Kafka 主题
问题描述
我正在使用 Confluent Kafka DotNet lib 来创建和生成主题:
producer.ProduceAsync(topic, key, message);
当该主题不存在时,该主题将自动创建一个分区。
但出于测试目的,我希望能够以编程方式创建具有N个分区的主题。
我在这里找不到任何示例(分支 0.11.5),如何创建具有多个分区的主题?https://github.com/confluentinc/confluent-kafka-dotnet
解决方案
由于我已经在使用 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 库的发布版本中提供了管理功能,我可能会对其进行更新以使用该方法。
推荐阅读
- gulp - 如何使用 gulp 的提示问题创建名称的目录
- java - 使用 Grix、gridy 删除 JTextField
- anylogic - 如何在回收区为乘客匹配行李?
- rest - MarkLogic 9 资源扩展 API 在没有 rs: 命名空间前缀的情况下无法工作
- javascript - 当网页保存在我的 PC 上而不是在线时,如何保存网页的状态?
- spring-boot - 在 spring rest/spring boot 中添加自定义标头以响应
- r - 单击按钮后如何将多个图像插入闪亮?
- python - 如何创建日期时间戳日志,如 git log
- javascript - 如何在取消选择芯片时弹出数组的值:AngularJS
- ios - 你如何加粗 NSMutableParagraphStyle 中的第一行?