有人告诉我,每次刷新我们的网站时,无论是单个页面还是整个网站,我都应该首先停止应用程序池,更新我的网站文件,然后启动应用程序池。我的网站文件由 HTML、JS、ASPX、INC、GIF、JPEG、CONFIG 等组成。我之所以问是因为我相信我已经更新了我的网站,而没有停止应用程序池并启动它,也通过停止和启动它,只是试图找出正确的方法应该是什么。
谢谢弗兰克·迪约翰
有人告诉我,每次刷新我们的网站时,无论是单个页面还是整个网站,我都应该首先停止应用程序池,更新我的网站文件,然后启动应用程序池。我的网站文件由 HTML、JS、ASPX、INC、GIF、JPEG、CONFIG 等组成。我之所以问是因为我相信我已经更新了我的网站,而没有停止应用程序池并启动它,也通过停止和启动它,只是试图找出正确的方法应该是什么。
谢谢弗兰克·迪约翰
一般来说,答案是否定的,您不需要这样做,但这最终取决于您使用的应用程序平台。根据这个问题,我可以看到您使用 ASP.NET,因此您绝对不需要这样做,因为 AppDomain(最终代码在应用程序池中运行的位置)将做正确的事情,无需做任何进一步的事情.
您想要回收它的少数情况是,例如当您加载 DLL 或某些文件时,无论出于何种原因,它们可能会被阻止并阻止您更新它们。在这种情况下,停止应用程序池将释放锁,这样您就不会冒失败的风险。
我还建议在您的生产环境中使用名为 app_offline.htm 的文件,这将为您的客户提供更好的体验,因为他们可能会在您上传/替换服务器中的文件时遇到间歇性问题,例如,假设您是将 DLL 替换为依赖于另一个尚未更新(仍在复制)的 DLL 的新版本,那么新请求可能会出现您不希望用户看到的奇怪异常或错误消息。通过添加该文件,它将确保用户看到“请重试,或其他内容”,而不是这些中间状态。
http://weblogs.asp.net/scottgu/archive/2005/10/06/426755.aspx