2010-06-07 32 views
0

谁能告诉我,有没有办法在IIS共享主机服务中运行进程。IIS共享主机中的工作进程

假设,这个场景就像“我希望在任何地方3小时后发送邮件到电子邮件ID的列表”,所以这里的挑战是不应该由HTTP链接调用过程。它应该是自动的。

我认为我们可以通过IIS工作进程来实现这一点。

而且这一切都将在共享服务器上发生的事情(例如GoDaddy)在IIS7,.NET 3.5

请人给我一个方向。

在此先感谢。

回答

0

如果您有权访问安装服务,则应该将其作为Windows服务编写并运行。

您可以从您的asp.net代码隐藏后台运行后台工作线程,但问题是IIS会在相对较短的时间内闲置后终止线程。我试着走这条路线,尝试对地址列表(800+,从SharePoint列表)中进行地址解析,并且IIS保持超时并停止它。我们最终将事件添加到SharePoint列表中,该列表将在项目更改/添加到列表时进行地理编码。

你可以考虑的另一个选择是使用Windows Workflow API,它是为这种事情设计的。

+0

所以这means..i能做到这一点,如果我有购买与GoDaddy VPS帐户.... ??? – 2010-06-08 04:45:55

+0

可能是,我真的不知道godaddy有什么样的帐户。在您花费美元之前,我会先问他们的技术支持或什么,只是为了确保该账户类型支持它。 – 2010-06-08 12:36:49

+0

这很好... godaddy不是唯一的一个。但是,我知道托管人员可以让您完全访问您的VPS。所以,我认为windows服务的方式,在这种情况下是最好的。 – 2010-06-08 13:59:20

1

这个问题在很久以前问过了,但是为什么它值得 - 我最终使用Hangfire来处理我在ASP应用程序中长时间运行的任务。

如果您可以根据需要放大/缩小,您可以轻松地将其配置为共享主机,然后专用服务器。

这是超级简单易用,只需按照文档一步一步。

干杯, 安德鲁

+0

是的,对于长时间任务而言,挂火石,我强烈推荐它! – clement 2015-05-19 14:57:43