【问题标题】:Using Windows Service as a scheduling service使用 Windows 服务作为调度服务
【发布时间】:2010-10-24 17:41:44
【问题描述】:

我从一位客户那里收到了这个问题,要每天或每两周运行一些数据库脚本,具体取决于期间的类型。他们定义了“忙碌”时期和“安静”时期。他们正在为他们的应用程序使用共享主机,他们无法将 SQL Server 作业添加到他们的数据库中。

我想做的是创建一个 Windows 服务,它可以使用配置文件进行配置,包含不同的时间段及其间隔。 该服务正在检查当前时间和日期与配置文件中的预定时间段,一旦时间间隔匹配,将执行 sql server 存储过程

我的问题:有没有更好的方法在没有 sql server 的情况下进行这种调度,或者您知道是否已经存在现有的、更通用(免费)的解决方案?

[编辑] 我不能使用 Windows 任务调度程序,因为它们的安静期是在冬天,而它们的繁忙期是在夏天。使用任务计划程序,我必须每年手动修改两次计划任务。这就是我和我的客户现在想要的。 [/编辑]

谢谢

【问题讨论】:

  • 服务器是否有任务计划程序可用?

标签: c# windows-services scheduled-tasks scheduling


【解决方案1】:

您可以在需要时使用 Windows 的“计划任务”功能来启动某些控制台应用程序。

如果您想创建自己的调度解决方案,那么我建议您查看Quartz.NET,它提供与 Windows 任务调度程序相同的灵活性。

【讨论】:

  • 我会检查 Quartz,看起来很有希望。
【解决方案2】:

为什么不使用任务调度程序,然后每次启动应用程序时,它都会检查自己的调度以确定是否需要执行某些操作。

因此您可以使用任务调度程序每 15 分钟启动一次应用程序。当您的应用程序启动时,它使用它自己的配置文件来确定它是否需要做某事。

您还可以使用它来让您的应用程序停止任何当前正在运行的应用程序版本,以终止任何长时间运行的任务!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多