Str*_*ped 5 c# asp.net-mvc iis-7 asp.net-4.5 visual-studio-2015
构建MVC Web应用程序后,我习惯于访问的第一个网页的加载时间很慢,我知道为什么会发生这种情况,但是我也注意到加载时间对于初始访问而言很慢。每个网页。
例如,以下是在各种情况下我的主页的加载时间。主页不进行任何数据库调用:
我已经对所有网页(而不仅仅是首页)重现了相同的结果。即,如果将“主页”替换为“关于我们的页面”,将“联系页面”替换为“常见问题页面”,则加载时间将与上述几乎完全相同。
这些数字是针对我的本地环境的,如果我将项目推送到生产环境,它们会猛增,并且每页的初始负载为数十秒。
有趣的是,我只记得几天前开始发生这种情况。在过去的几个月中,据我所记得,最初的网站加载总是很慢,但是此后,所有页面的初始加载速度都非常快。
是什么导致每个页面的初始加载时间缓慢?
应用程序池需要时间来构建库,然后才能开始处理它们。这可以通过使用某种脚本来加速。它还取决于您使用的是网站还是 Web 应用程序项目。每个页面的网站第一次点击都很慢,并且每个新页面点击都有额外的编译时间。预编译的 Web 应用程序项目应该会快一点,但仍然需要加载库。拥有的库和工具越多,这种影响就越严重。
您还可以寻找IIS 自动启动功能并在您的服务器上设置它可能有助于加快该过程。默认情况下,如果用户不活动默认值 1740 分钟,应用程序池就会关闭。您还可以通过设置为 0 来禁用空闲超时,这会很有帮助。
我最好的选择是使用应用程序初始化插件来获得更好的性能 http://www.iis.net/learn/get-started/whats-new-in-iis-8/iis-80-application-initialization