我正在开发一个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