【发布时间】:2019-10-31 17:30:04
【问题描述】:
使用 Kafka Streams DSL 创建 Kafka Streams 时 https://kafka.apache.org/0110/documentation/streams/developer-guide
我们遇到了需要使用新拓扑定义更新 Kafka 流的情况。
例如: 当我们开始时,我们定义了一个拓扑来读取一个主题(Source)和一个目标主题(Sink)。 但是,在配置更改时,我们现在需要读取 2 个不同的主题(如果愿意,可以是 2 个源)并写入单个目标主题。
根据我们现在构建的内容,拓扑定义是硬编码的,类似于processor topology 中的定义。
问题:
是否可以以声明性方式(例如 Json 或其他方式)定义拓扑,而无需对拓扑进行编码?
是否可以重新加载现有的 Kafka 流以使用新定义的 Kafka 流拓扑?
对于上面提到的 #2,Kafka Streams DSL 是否提供了一种通过外部触发器或系统调用“重新加载”新拓扑定义的方法?
我们正在使用 JDK 1.8 和 Kafka DSL 2.2.0
谢谢, 阿尤斯曼
【问题讨论】:
标签: java apache-kafka apache-kafka-streams