Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Coldfusion 10调度器_Coldfusion_Scheduled Tasks_Coldfusion 10 - Fatal编程技术网

Coldfusion 10调度器

Coldfusion 10调度器,coldfusion,scheduled-tasks,coldfusion-10,Coldfusion,Scheduled Tasks,Coldfusion 10,我想使用Coldfusion 10调度器实现以下功能 我有一个预定的任务,比如Task1。Task1应连续执行,无任何时间延迟或重叠。i、 e 如果Task1需要10分钟,则应在第11分钟再次触发。 如果下一次运行需要20分钟,则应仅在第21分钟触发 请提供建议。以下是要遵循的策略: 1) 创建一个表,其中包含要跟踪脚本是否正在使用的字段。示例表:ScheduleStatus,字段:intInUse 2) 创建脚本。让脚本的第一行检查intInUse字段是否为null。如果是,则将其设置为1

我想使用Coldfusion 10调度器实现以下功能

  • 我有一个预定的任务,比如Task1。Task1应连续执行,无任何时间延迟或重叠。i、 e
如果Task1需要10分钟,则应在第11分钟再次触发。 如果下一次运行需要20分钟,则应仅在第21分钟触发


请提供建议。

以下是要遵循的策略:

1) 创建一个表,其中包含要跟踪脚本是否正在使用的字段。示例表:ScheduleStatus,字段:intInUse

2) 创建脚本。让脚本的第一行检查intInUse字段是否为null。如果是,则将其设置为1并运行脚本的其余部分。如果字段不为空,则跳到cfabort

3) 脚本完成后,再次将数据库字段标记为NULL

4) 将计划任务设置为每分钟运行一次。它将每分钟执行一次,如果脚本正在使用,它将中止

可能还有其他的方法,通过循环等等。。。。但这可能是最简单的


我使用类似的方法来发送定制新闻稿的排队系统。

这是可能的,但不是直接的。计划任务可以运行“链”中的另一个任务,但被链接的任务必须是“链”类型的任务。但是,您可以让一个任务通过另一个代码运行

下面是您可以设置它的方法

  • 将任务A设置为运行一次
  • 将任务B设置为链接任务
  • 将任务A配置为在通过on complete事件完成任务B时调用任务B
  • 在任务B的代码中,让它运行任务A
  • 这将创建一个无限循环。但请注意,这可能会导致一些不必要的行为。您必须自行管理错误和缺火。此外,如果链条循环中断,则必须重新启动


    您可以设置一个观察者任务,以确保链正在运行。如果它似乎失败了,您可以调用任务B启动该链。

    您尝试了什么?如果你有,并且被卡住了:你在哪里被卡住了(相应地更新问题)你是从阅读文档开始的吗:如果我们知道这个人已经做了什么,这将节省我们很多时间。如果答案是“什么都没有”,那么我就知道要尽可能多地帮助他们,就像他们自己所做的一样。希望我们能在这里得到更多的细节…我会尝试使用消息队列中的一些东西。您可以将Task1设置为每x触发一次,并使用队列保持连续性。