Java Spring云数据流:任务的程序编排
背景 我的Spring云数据流服务器作为一个Pod运行在Kubernetes中。我能够从仪表板启动任务。我希望开发一个更复杂、真实的任务管道用例 我不想使用SCDFUI仪表板,而是想从标准Java应用程序启动一系列任务。考虑以下任务管道: 任务1:从数据库中读取作为任务参数输入接收的唯一id的数据,并执行充实。浓缩后的记录被写回数据库。一个任务实例的执行负责处理一个唯一id 任务2:读取步骤1为作为任务参数输入接收的唯一id编写的丰富数据,并生成报告。一个任务实例的执行负责为一个唯一id生成报告 从上面的解释可以清楚地看出,任务1和任务2是连续的步骤。假设输入数据库包含50k个唯一ID。我想开发一个orchestrator Java程序,它可以启动任务1,限制为40。(即,在任何给定时间,任务1只能运行40个吊舱。任何为任务1启动更多吊舱的请求都应等待)。一旦通过Task1实例处理完所有50k唯一ID,只有这样才能启动Task2 POD 到目前为止我的发现 翻阅文档,我发现了一个名为。但是,示例显示了在shell/cmd窗口上触发的命令。我想做一些类似的事情,但不是打开一个数据流外壳程序,而是将参数传递给一个可以在内部启动任务的Java程序。这使我能够轻松地将我的应用程序与知道如何与Java代码集成的遗留代码集成(通过按需启动Java程序,启动一组任务并等待它们完成,或者通过调用Rest API) 问题Java Spring云数据流:任务的程序编排,java,kubernetes,pipeline,spring-cloud-dataflow,Java,Kubernetes,Pipeline,Spring Cloud Dataflow,背景 我的Spring云数据流服务器作为一个Pod运行在Kubernetes中。我能够从仪表板启动任务。我希望开发一个更复杂、真实的任务管道用例 我不想使用SCDFUI仪表板,而是想从标准Java应用程序启动一系列任务。考虑以下任务管道: 任务1:从数据库中读取作为任务参数输入接收的唯一id的数据,并执行充实。浓缩后的记录被写回数据库。一个任务实例的执行负责处理一个唯一id 任务2:读取步骤1为作为任务参数输入接收的唯一id编写的丰富数据,并生成报告。一个任务实例的执行负责为一个唯一id生成报告
.definition(“a:timestamp&&b:timestamp”)
]
通过将其定义为Java代码,您将能够构建、启动或计划这些有向图的启动。我们看到许多客户采用这种方法进行E2E验收测试和部署自动化
[加]
此外,您还可以扩展的编程任务定义。这确实为我指明了正确的方向;但是,我无法再启动同一任务的多个实例。我在这上面贴了一个帖子。我很想听到你的意见。