2011-02-28 67 views
2

如果您有每天运行一次的重复性任务,则使用计划任务。
如果您有一个每10秒运行一次的重复任务,则使用服务。服务与计划任务时间间隔

你在哪两点之间切换?有没有官方的指导呢?

+0

我见过其他一些类似的问题,但我认为这不是一个骗局,因为其他人解决他们应该做一个特定的时间间隔与一般情况下,因为我也寻找官方指导如果有任何。 – 2011-02-28 15:02:30

回答

0

我认为这取决于如果您的程序仅适用于一个任务或更多。如果它只是做一个愚蠢的事情(比如每20秒钟在一个数据库中运行一个存储过程),我会引用一个调度任务,但是如果它做的比这个更多,并且可能获得一些依赖关系(也许它运行的时间或者一些文件操作)我会对一个服务进行合并。 如果操作的时间间隔不同,我也会对服务进行合并。假设您的程序在数据库中运行单个存储过程,并取决于它对数据库进行了“真实”更改。如果它做了什么,下一次运行是在5秒内,如果没有,下一次运行在20秒内。这是一项服务的完美例子之一。

1

我不确定间隔是这里的主要问题。 这里有一些事情要考虑:

  1. 这个任务在内存中有多少国家需要 - 你从数据库的文件加载的东西?
  2. 是否需要此任务运行的系统,是否需要与其他任务 进行通信?
  3. 当任务结束时,您是否需要更多地控制流程生命周期?

你可以看到我在哪里与此,一个服务是一个常驻实体,而一个调度任务不是。