有Windows服务或控制台应用程序是否好?

Jun*_*uni 7 c# windows-services console-application

我的数据库中有一个任务表.我想从这个表中读取数据并运行任务.无论是将其作为Windows服务还是运行控制台应用程序,哪一个更好.将运行此服务器的服务器将不会关闭

Dav*_*New 7

您最有可能想要使用Windows服务.

优点:

  • 您可以控制启动该过程的用户(以及与此用户帐户关联的权限)
  • 自动启动的进程意味着桌面需要打开而不是用户记录才能运行服务
  • 可以定义失败策略(如果失败,尝试重启n次运行特定程序)
  • 可以定义依赖项(如果依赖于其他服务)
  • 您可以将脚本包装在不可见的窗口中
  • 您可以轻松启动/停止/重启脚本(net start <scriptname>)

引自此处: 将应用程序开发为Windows服务有什么好处?

  • 很好的答案.我想补充一点,对于高级方案,您可以直接在服务中托管一个小型Web应用程序.这将允许您远程控制或监视服务(只要注意安全隐含).这方面的一个例子是[Rabbitmq管理服务](http://www.rabbitmq.com/management.html).一个小型嵌入式Web服务器允许管理员远程监控服务 (2认同)