Quartz.NET与Windows计划任务.他们有多不同?

Ser*_*ier 25 windows scheduling scheduled-tasks quartz.net

我在寻找Quartz.NET和Windows Scheduled Tasks 之间的一些比较?

他们有多不同?每个人的利弊是什么?如何选择使用哪一个?

TIA,

Mar*_*hma 22

使用Quartz.NET,我可以对比一些早期的观点:

  1. 要编写的代码 - 您可以用.NET语言表达您的意图,编写单元测试并调试逻辑
  2. 与事件日志集成,你有Common.Logging,允许写入甚至数据库..
  3. 坚固可靠
  4. 更丰富的API

这主要是关于你需要什么的问题.Windows计划任务可能会为您提供所需的一切.但是,如果您需要群集(分布式工作人员),对触发或失火处理规则进行细粒度控制,您可能希望检查Quartz.NET在这些方面提供的内容.

采用最简单的填充您的要求,但足够抽象以允许更改.

  • 您可能会在这里混淆线程和进程。Windows调度程序确实在它自己的进程中。只要它们都位于同一个盒子上,它们就会消耗机器的资源。您始终可以在 Windows 服务下托管您的调度程序,无论是在同一个机器上还是在完全不同的机器上。 (2认同)

ste*_*hbu 16

我的直觉反应是在安装另一个调度程序之前尝试让集成的WinScheduler满足您的需求 - 推理:

  1. 无需安装 - 默认安装和启用
  2. 没有要编写的代码 - 表示为元数据的作业
  3. 与事件日志等集成
  4. 强大而可靠 - 足以满足MSFT,Google等的需求.
  5. 相当丰富的API - 创建工作,检查状态等.
  6. 与远程管理工具集成
  7. 安全集成 - 以不同的凭据运行作业
  8. 监控工具

如果不符合您的需要,请到达Quartz.Quartz当然也有许多这些功能,但是如果可以的话,还要加入另一项服务来拥有和管理.

  • @Reader:看起来很明显,但是......如果您选择使用*Windows任务计划程序*,您实际上将部分应用程序暴露给外部世界.具有相应权限的任何人都可以修改(甚至删除)应用程序的任务.这对您来说可能是,也可能不是问题. (2认同)