我正在開發一個MVC應用程序,其中有幾個長時間運行的進程。 在這個MVC應用程序中,我試圖從facebook上拉出朋友並存儲在mongoDB中。是在ASP.Net中管理長時間運行的進程MVC5
此過程的步驟如下: -
- 爲用戶從數據庫中泛型列表對象拉朋友。
- 從另一個通用列表對象中的臉譜拉一個用戶的朋友。
- 識別不在數據庫中的新朋友。
- 對於現有的朋友運行循環並更新現有數據。
- 存放在database.There的新朋友是
,如果他們大約在50到100的朋友也能正常工作。但是如果有1000多個朋友,那麼網頁大約需要30多分鐘來執行它們。爲了執行這個過程,我使用Task with async並等待。我通過jQuery AJAX調用控制器動作。
所以我的問題是,如果他們是2000+記錄,那麼它需要太多的時間。因此,在研究了我想使用窗口服務從Facebook提取數據之後。不過,我仍在探索選項,以便我沒有使用窗口服務。
使用窗口服務對於我有一些問題beow: -
- 如何開始從ASP.Net MVC的窗口服務。
- 如果我可以從ASP.Net MVC控制器的窗口服務中傳遞參數。
- 如果窗口服務將停止自動完成任務或我需要從網頁中停止它 。
- 如果窗口服務可以從窗口Azure中的ASP.Net MVC應用程序訪問,因爲它將在Azure中託管 。
- 他們是從Azure中的MVC訪問窗口服務時的任何安全問題。
對不起,有太多的問題。我早些時候使用過Window Service,但它隨着時間安排。所以從ASP.Net訪問對我來說是新的。
我找到一篇文章http://weblogs.asp.net/kaushal/start-stop-window-service-from-asp-net-page但它並沒有提供我的問題的所有答案。
請在這方面幫助我。提前致謝。
您不一定需要Windows服務。 Azure友好的技術可以安全地運行代碼[在後臺](http:// www。hanselman.com/blog/HowToRunBackgroundTasksInASPNET.aspx)。 – mason