我已经写了一段时间的Windows服务,它们似乎总是适用于需要每天运行,每周运行几次,每月一次等的事情。但我最近一直在考虑与Windows Workflow Foundation。
但是,我不确定它们如何在没有某些容器应用程序的服务器上运行(例如SharePoint)?之前我使用过Sharepoint工作流程,而且我总是遇到很大的问题,首先是工作流架构实现中的错误(睡眠和延迟问题),以及稍后当它们最终开始工作时,它们很难管理和更改。
另一方面,Windows服务总是很容易实现,很容易为它们创建设置并安装它们并且它们总是很有弹性(它们经常工作几个月而不会崩溃或出现其他问题)。
你推荐什么?请记住我们正在使用.NET(版本没有问题,如果4.0带来了关于这个主题的新内容,我们可以使用它。)
答案 0 :(得分:4)
您是否查看了Windows计划任务?它不是新的,但它允许您构建可在特定日期/时间运行的应用程序。调度程序提供了许多类似于Windows服务的自定义。 MSDN Article
答案 1 :(得分:0)
我们经常选择使用Windows服务。对于重复和计划任务,我们使用Quartz.Net库。当这些任务是冗长的阻塞操作时,我们还会合并SmartThreadPool库。我们让Quartz创建一个工作并将其粘贴在SmartThreadPool中以便执行(因为我们在Quartz中遇到了长时间运行的作业的错误触发问题,也因为我们有时希望将不同类型的作业分成不同的线程池来执行)。 / p>