我正在尝试安排在SCDF中启动撰写的任务,但一直无法找到实现此目的的方法。
我发现最接近的是TriggerTask源和任务启动器宿模块。见TriggerTask
这种方法的问题在于它获取任务工件的URI并使用给定的任务属性启动新的任务定义。因此,无法启动组合任务,甚至是预先存在的任务定义。
有没有理由为什么tasklauncher不会像你通过shell一样启动任务?这样您就可以创建任务定义,并为TriggerTask源提供名称。也许这个功能已经存在,我一直在忽视它。
否则,我可以编写自己的接收器,以某种方式调用任务启动,可能通过API。
答案 0 :(得分:0)
核心是tasklauncher
包含Deployer SPI。由于这个原因,你会发现runtime specific implementation同样的。{3}}。接收器应用程序的唯一责任是在上游事件时编排所需的“任务应用程序”;是来自真实来源的事件还是来自triggertask
的定时时间表事件。因此,它需要一个Boot应用程序,我们希望应用程序与它协调。
如果您的要求只是安排组合任务而不是动态地基于上游事件,请考虑在SCDF中针对已定义任务(通过API)的独立调度程序,或者创建一个简单的quartz-scheduler启动应用程序。在这个用例中使用triggertask
可能有点过分。
如果您在PCF中运行,则可以使用您可以利用的调度程序服务,同样,在其他平台上,还可以有其他选项。