在.NET中实现工作服务

时间:2011-04-21 16:56:47

标签: .net windows-services service appfabric worker

我需要在当前的解决方案中添加“工作流程”,并满足以下要求:

  • 必须连续(或以特定间隔)运行
  • 自动启动
  • 从多个来源(SQL数据库,WCF服务......)获取数据并进行一系列计算
  • 根据这些结果做出决定并执行一些操作(保留一些结果,发送通知,......)
  • 它应该具有允许交互的公共服务操作(例如,请求从特定日期重新处理数据)

我将它创建为.NET类库,因此我可以利用我解决方案中的其他程序集 它将部署在企业环境中,我可以完全访问服务器。

你会选择什么托管选项?

  • Windows服务
  • 使用Windows Server AppFabric的IIS中的WCF服务(允许自动启动)
  • 其他选择?

2 个答案:

答案 0 :(得分:1)

这是一个托管在Windows服务中的wcf应用程序给我。它提供了您需要的所有功能,以及使用wmi进行远程管理和监控。

答案 1 :(得分:1)

我几乎遇到了完全相同的问题,我选择了一个以编程方式启动WCF服务的Windows服务,以便它可以与我的主应用程序通信,并且它的工作非常好。我甚至添加了额外的逻辑。我可以设计我的工作人员的任务并在我的工作人员上加载MEF,因此工作人员甚至不知道执行什么,他只是启动带参数的任务,并检索状态信息,并返回执行结果。