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