Windows 其中";平台“;我们应该使用通知程序组件吗?

Windows 其中";平台“;我们应该使用通知程序组件吗?,windows,windows-services,notifications,scheduler,Windows,Windows Services,Notifications,Scheduler,我们需要开发一个通知程序组件。它将要做的是,每隔一定的时间(比如说,每15分钟)扫描一次数据库,看看是否需要发送任何通知 我们在Windows上运行,因此我们一直在研究Windows服务或Windows任务调度程序 我们最关心的是实现的健壮性。如果由于某种原因,它崩溃了,它能在下一个间隔自动重新启动吗?我们可以使用自定义日志逻辑来处理崩溃吗 我想要一个有根据的猜测在这里使用什么:)如果你需要更多的信息,请随意说,作出这样的猜测 如果有人能够列出windows服务与windows任务调度程序的优缺

我们需要开发一个通知程序组件。它将要做的是,每隔一定的时间(比如说,每15分钟)扫描一次数据库,看看是否需要发送任何通知

我们在Windows上运行,因此我们一直在研究Windows服务或Windows任务调度程序

我们最关心的是实现的健壮性。如果由于某种原因,它崩溃了,它能在下一个间隔自动重新启动吗?我们可以使用自定义日志逻辑来处理崩溃吗

我想要一个有根据的猜测在这里使用什么:)如果你需要更多的信息,请随意说,作出这样的猜测

如果有人能够列出windows服务与windows任务调度程序的优缺点,那么将提供道具。另外,需要注意的是,我们对这两项都没有设定,所以如果你有其他选择,请不要发帖


提前感谢:)

如果您的应用程序不需要连续运行,那么使用任务调度器有一些好处。设置起来比较容易,您可以将应用程序配置为每15分钟运行一次,执行查询,发送通知,安排下次运行并关闭。但是,考虑到15分钟的间隔,您最好将其作为Windows服务实现,因为生成和终止进程的开销经常会抵消不连续运行进程的好处

Windows服务

优势

  • 可以配置为自动重新启动(请参阅service Manager控制面板应用程序中的服务属性)
  • 可以配置为在不同用户帐户的上下文中运行
  • 可以远程启动、停止
  • 即使没有人登录,也会继续运行
缺点

  • 安装需要仰角
  • 连续运行,可能有利也可能不利

任务计划程序

优势

  • 可以配置为按您选择的计划运行,包括复杂的计划
  • 可以配置为在不同用户帐户的上下文中运行
缺点

  • 如果一次调用失败,您将不得不等到下一次调用,或者实现逻辑以适当地调整调度
请参见前面的问题: