物理路径更改时应用程序域重新启动
Posted
技术标签:
【中文标题】物理路径更改时应用程序域重新启动【英文标题】:Application domain restarts when physical path changes 【发布时间】:2011-11-25 15:55:24 【问题描述】:在更新 IIS6 上的 Web 应用程序时,我试图最大限度地减少停机时间 - 我有两个文件夹(一个包含当前应用程序,一个包含新代码)。一旦我将虚拟目录的物理路径切换到新文件夹,就会发生重新编译(“应用程序正在关闭。原因:应用程序的物理路径已更改。”)。但是,如果我在新旧物理路径之间切换多次,有时不会发生重新编译。例如:
切换到文件夹B 事件代码:1002 事件消息:应用程序正在关闭。原因:应用的物理路径发生了变化。 切换回文件夹A 事件代码:1001 事件消息:应用程序正在启动。 (没有关机?) 切换回文件夹 B 事件代码:1001 事件消息:应用程序正在启动。 (没有关机?)域名总是不重启是什么原因?
【问题讨论】:
【参考方案1】:ASP.NET 对每个应用程序使用不同的哈希码(根据应用程序名称、物理路径和可能的其他参数计算)。在物理路径之间来回切换会产生两个不同的代码(以及“临时 ASP.NET 文件”中的两个文件夹)。一旦应用程序被 JIT 处理,就不会发生关闭。
【讨论】:
以上是关于物理路径更改时应用程序域重新启动的主要内容,如果未能解决你的问题,请参考以下文章