嗨,你正在努力解决问题。我创建了一些crons和i,我想以特定的顺序一个接一个地运行它们。让我说我有A,B,C和D crons并希望在完成Cron A之后运行Cron B,然后想要运行Cron D并在那之后cron C.我搜索了一种方法来完成这项任务但是找不到任何 。任何人都可以帮忙吗?
答案 0 :(得分:2)
如果您正在使用crons,那么我猜你已定义了cron运行者将调用的端点...
使用cron runner启动任务A,让它add a task in the task queue在完成后运行B.重复B和C.
您可以使用与cron作业相同的端点。
答案 1 :(得分:1)
虽然我同意评论中的建议,但我认为我能更好地解决您的问题(希望如此:))
虽然没有必要,但您可以在应用程序中使用拉取队列,以便于设计问题。我建议的模式是这样的:
1)servlet集中处理各种任务的执行(让他们称之为控制器)并在URL上公开
2)通过点击作业的URL(再次假设拉队列),控制器启动作业
3)作业完成后,作业将返回控制器URL以报告作业完成
4)控制器依次从完成的队列中删除作业,并将下一个逻辑作业添加到队列
这是重复的。
在这种情况下,即使添加了序列更改逻辑或新作业,您的作业代码也不会更改。您可能只需要对控制器进行更改。