使用多种编程语言

当应用程序注册为 Docker 容器时,即使应用程序不是 Spring Boot 应用程序,Data Flow 也可以部署它。Data Flow 还可以部署用其他语言编写的应用程序。但是,这些应用程序负责读取与 Spring Boot 众所周知的配置属性相对应的环境变量。如果应用程序消费或生成消息,则需要将消息中间件的客户端库作为应用程序的一部分包含在内,以便参与流。要作为任务参与,应用程序需要写入(由 Data Flow 创建的)Task 表。

为了演示此功能,我们创建了三种类型的 Python 应用程序并将它们打包在 Docker 容器中。

  • 第一个应用程序由数据流作为流中的 处理器 进行部署,方法是包含 kafka-python 库来创建消费者和生产者连接。
  • 第二个应用程序由数据流作为任务进行部署。
  • 第三个应用程序由数据流作为流中的 应用程序 进行部署。这与部署 处理器接收器 不同,因为数据流不会设置连接生产者和消费者的环境变量。相反,您必须自己将这些环境变量设置为部署属性。该方案实现了 动态路由器 集成模式,将时间戳的 输入 流分派到 偶数奇数 下游通道。