代码之家  ›  专栏  ›  技术社区  ›  mare

重复(每日、每周、每月)任务使用什么?工作流,Windows服务,还有其他什么?

  •  1
  • mare  · 技术社区  · 14 年前

    我写Windows服务已经有一段时间了,它们似乎每天都要运行好,一周几次,一个月一次,但是最近我一直在考虑使用Windows工作流基金会。

    但是,我不确定它们在没有容器应用程序(例如SharePoint)的服务器上如何运行?我以前使用过SharePoint工作流,我总是遇到巨大的问题,首先是工作流体系结构实现中的错误(睡眠和延迟的问题),然后当它们最终开始工作时,它们很难管理和更改。

    另一方面,Windows服务总是很容易实现,很容易为它们创建一个安装程序并安装它们,而且它们总是很有弹性(它们通常工作数月而不会崩溃或出现其他问题)。

    你推荐什么?请记住,我们正在.NET中工作(版本没问题,如果4.0在这个主题上带来了新的东西,我们可以使用它)。

    2 回复  |  直到 14 年前
        1
  •  0
  •   quentin-starin    14 年前

    我们经常选择使用Windows服务。对于周期性和计划性任务,我们使用 Quartz.Net 图书馆。当这些任务是冗长的阻塞操作时,我们还将 SmartThreadPool 图书馆。我们让Quartz创建一个作业并将其粘贴到SmartThreadPool中以便执行(因为我们在Quartz中遇到长时间运行的作业的缺火触发问题,而且有时我们希望将不同类型的作业分为不同的线程池以供执行)。

        2
  •  4
  •   gooch    14 年前

    您查看过Windows计划的任务吗?它不是新的,但它允许您构建一个可以在特定日期/时间运行的应用程序。调度程序提供了许多类似于Windows服务的定制。 MSDN Article

    推荐文章