2

我有一个问题,在没有预编译的情况下为我的 ASP.NET 站点投入生产导致的不仅仅是初始启动速度慢 - 服务器实际上因内存和 SQL 连接而崩溃。我认为正在发生的事情是,当站点中的页面动态编译时,ASP.NET 达到了一个阈值,它想要重新启动应用程序,因此它在旧实例停止运行时启动一个新实例,我最终得到了多个我的应用程序正在运行。

无论如何,我可以通过在部署后系统地点击我网站上的页面来防止这种情况,但这非常耗时。所以我开始研究用 aspnet_compiler.exe 就地编译整个站点。

但它似乎没有这样做 - 我跟踪 ASP.NET 应用程序/编译总数,并且无论我是否运行 aspnet_compiler.exe,当我点击页面时,我都会看到计数器竞速。我得到了很好的编译器输出——它似乎可以工作——但无论如何我点击它们时页面似乎是动态编译的。

我研究了这两个 SO 讨论:

ASP.NET 就地预编译无法按预期工作

使用 NGEN 有帮助吗?

他们让我很困惑。

那么独家新闻是什么 - 我是否应该能够就地预编译所有内容,以便在我点击页面时编译性能计数器保持为零?

4

0 回答 0