Azure上的C#MVC应用程序:网站在新部署时工作正常,但在闲置后失败

时间:2015-06-24 21:50:24

标签: c# asp.net-mvc azure

我花了很多时间研究这个,但没有找到其他人报告我所遇到的问题。

我部署了我的网站,一切都很好。我与我的QA和UI窥视分享链接,一切都适合他们。但是,如果网站持续一段时间,例如一夜之间,没有被访问,那么Web应用程序无法启动并报告类型中的“方法'get_CurrentUser'没有实现。”停止并重新启动站点不能解决问题,但如果我只是将主.dll文件(完全相同的.dll版本)重新上传到该站点,那么一切正常。无论如何,有一段时间。

为什么新出版时会好起来但坐了一段时间后失败了?任何有关解决此问题的建议都将非常感谢。

3 个答案:

答案 0 :(得分:0)

IIS已经为空闲超时引入了挂起操作,当站点空闲指定的持续时间时,IIS将暂停进程,上帝知道究竟发生了什么,但看起来它只是休眠进程。并且唤醒可能不起作用,因此您可以更改此操作以终止空闲超时。

第二个选项是使用pingdom或site24x7服务保持站点清醒。

答案 1 :(得分:0)

尝试Azure Web App并设置Always On是否有帮助? http://azure.microsoft.com/updates/azure-web-sites-adds-always-on/

答案 2 :(得分:0)

看起来我找到了解决方案。

global.asax中的app start事件包括" var assemblies = System.Web.Compilation.BuildManager.GetReferencedAssemblies();"为了确保所有内容都加载,但该行是在触发所有依赖项注册的调用之后。我剪切/粘贴了这条线,以便它首先发生,并且当我今天早上尝试它时,网站很好。