【问题标题】:Using Kafka with Netflix Conductor将 Kafka 与 Netflix Conductor 一起使用
【发布时间】:2019-01-09 10:21:40
【问题描述】:

我想知道是否有一种简单的方法可以连接 Kafka 和 Netflix Conductor(而不是 SQS)?目前,它似乎只适用于 Amazon SQS。此外,似乎只能按任务执行一项操作。有没有办法按任务执行多个操作?

提前致谢,

【问题讨论】:

标签: apache-kafka workflow netflix netflix-conductor


【解决方案1】:

要将 Kafka 支持添加到 Netflix Conductor,您需要

  • 在 contribs 中创建一个扩展 AbstractModule 的模块(在您的 server.properties 中添加一个条目,以对抗conductor.additional.modules 属性)
  • 为 kafka 生产者和消费者操作实现 ObservableQueue。
  • 像 SQS 实现一样实现 EventQueueProvider
  • 在 server.properties 中为您的 kafka 初始化添加属性
kafka.producer.bootstrap.servers=host1:port1;host2:port2
kafka.producer.key.serializer=org.apache.kafka.common.serialization.StringSerializer
kafka.producer.value.serializer=org.apache.kafka.common.serialization.StringSerializer
kafka.consumer.bootstrap.servers=host1:port1;host2:port2
kafka.consumer.key.deserializer=org.apache.kafka.common.serialization.StringDeserializer
kafka.consumer.value.deserializer=org.apache.kafka.common.serialization.StringDeserializer
  • 通过更新 contribs 模块的 build.gradle 为项目添加 kafka 库支持。

参考下面的 PR 链接实现(作者 preeth-gopalakrishnan)

https://github.com/Netflix/conductor/pull/672

(如果没有找到PR,则假设它已合并到master)

【讨论】:

    猜你喜欢
    • 2018-11-23
    • 1970-01-01
    • 2021-11-26
    • 1970-01-01
    • 1970-01-01
    • 2021-12-25
    • 2018-08-28
    • 1970-01-01
    • 2015-12-08
    相关资源
    最近更新 更多