我正在寻找Quartz.NET和Windows Scheduled Tasks之间的一些比较?
他们有什么不同? 每个人有什么优点和缺点? 我如何select使用哪一个?
TIA,
在Quartz.NET中,我可以比较一些早期的观点:
这主要是一个关于你需要什么的问题。 Windows计划任务可能会给你所有你需要的。 但是,如果您需要集群(分布式工作人员),对触发或失火处理规则的细粒度控制,您可能希望查看Quartz.NET在这些方面提供的功能。
采取最简单的,满足您的要求,但足够抽象,以允许改变。
我的直觉反应是在安装另一个调度程序之前先尝试获取集成的WinScheduler以处理您的需求 – 推理:
然后达到石英,如果它不符合您的需求。 Quartz当然也有很多这样的功能,但是如果可以的话,不要再增加另一个服务来拥有和管理。
对我来说,一个重要的区别是没有包含在其他答案中的是调度程序执行的内容。
Windows任务计划程序只能运行可执行程序和脚本。 在Quartz中编写的代码可以直接与您的项目的.NET组件进行交互。
使用任务计划程序,您将不得不编写一个shell可执行文件或脚本。 在该shell的内部,您可以与您的项目组件进行交互。 编写这个shell代码不是一个困难的过程,你必须考虑部署额外的文件。
如果预计在项目的整个生命周期中添加更多计划任务,则最终可能需要创建额外的可执行文件或脚本文件,这需要更新部署过程。 使用Quartz,您不需要这些文件,这减少了创建和部署额外任务所需的全部工作。