2014-04-16 58 views
0

我目前正在处理的项目中有一项要求是:我们有一个客户名单,每个客户都有一个月费,所以系统必须根据它的价值自动发送给客户支付那个月。系统位于IIS上,服务器上是一个Web API层。如何在IIS托管应用程序中定期执行某些操作?

这将需要定期处理事务的能力:每个月的第X天将此消息发送给客户。

问题是,只要我看起来here这是不可能的,因为ASP.NET只会回答请求。那里提出的解决方案是在客户的计算机上运行的解决方案,这对我不起作用。那么有没有办法与IIS做到这一点?我可以从哪里学到更多?

+0

两种最常见的解决方案是自定义Windows服务或利用Windows任务计划程序为您的某个网址安排ping。 –

回答

2

您不应该使用IIS来完成这些类型的任务。 IIS旨在响应传入的请求。线程由IIS本身管理,并且AppPool(即AppDomain)可以随时回收(或在Windows Server 2012及更高版本中暂停)。你当然可以停止AppPool回收等,但它仍然试图让IIS功能做一些它不是专门设计的。

您应该编写所有这些后台处理代码作为Windows服务运行,以便控制进程的生命周期。

相关问题