如何预加载或预热web应用程序中的所有控件

本文关键字:控件 应用程序 web 加载 何预 | 更新日期: 2023-09-27 18:26:19

我有一个大型的ASP.Net Web应用程序项目。每个页面的第一次加载都比随后的加载慢得多。

这是一个DotNetNuke应用程序,具有各种身份验证功能,每个页面上都有许多具有不同功能的按钮,所以我无法通过自动请求页面来真正预热它

下面,当我第一次点击页面时,我不确定这些临时文件到底是什么加载到我的输出窗口中,但我认为这些是我希望在用户重新启动应用程序后第一次点击网页之前提前加载的。

iisexpress.exe' (CLR v4.0.30319: /LM/W3SVC/53/ROOT-2-130941952178711862): Loaded 'C:'Users'user1'AppData'Local'Temp'Temporary ASP.NET Files'vs'98982176'2cd0bb0a'App_Web_pouimq4s.dll
iisexpress.exe' (CLR v4.0.30319: /LM/W3SVC/53/ROOT-2-130941952178711862): Loaded 'C:'Users'user1'AppData'Local'Temp'Temporary ASP.NET Files'vs'98982176'2cd0bb0a'App_Web_zj3nosz2.dll

我想在用户访问网站之前,在我的应用程序中预加载、预编译或缓存所有ascx文件。这可能吗??

如何预加载或预热web应用程序中的所有控件

有各种方法可以帮助实现这一点,但DNN加载东西的方式必须确保访问每个具有唯一模块的页面。(每个模块使用一次。如果在5个页面上使用相同模块,则只需要访问一次。)

这里的简单方法是使用外部监视器每10分钟跟踪一次主页。这就是我对我的网站所做的,因为我有正常运行时间通知的额外好处。我相信还有其他活动可以根据需要加载其他模块。

你可以调整"空闲超时"以防止网站关闭,但每天的回收通常会有所帮助。