考虑一个字符串数组作为输入,我的目标是为每个字符串安排cron作业。我尝试过为每次输入迭代创建自定义工作流选项并执行相同的操作。在此之后,只有第一个cron工作流被调度,而其他cron作业则无限期地等待。
for ind , sid := range ss_ids {
var cronScheduleStr string
if ind == 0 {
cronScheduleStr = "* * * * *"
}
if ind == 1 {
cronScheduleStr = "2 * * * *"
}
workflowID := "cron_" + sid
workflowOptions := client.StartWorkflowOptions{
ID: workflowID,
TaskQueue: "cron",
CronSchedule: cronScheduleStr,
}
we, err := c.ExecuteWorkflow(context.Background(), workflowOptions, cron.SampleCronWorkflow,sid)
if err != nil {
log.Fatalln("Unable to execute workflow", err)
}
log.Println("Started workflow", "WorkflowID", we.GetID(), "RunID", we.GetRunID())
}
除此之外,我尝试了以相同的方式子工作流,但也只安排了第一个cron子工作流。如果有人能帮忙的话,那就太好了。
1条答案
按热度按时间8xiog9wr1#
如果
ss_ids
是唯一的,第一个应该每分钟运行一次,第二个应该在每小时的第二分钟运行一次,其余的将有CronSchedule: ''
。