在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
事情是这样的,做好一个ASP.NET MVC网站之后,首次启动速度非常慢,要几秒到几十秒不等的时间才能展现页面.每隔几十分钟就会出现一次这样的情况.问题发现了,下面开始解决. 首先 开发环境是:VS2013+IIS8+SQLExpress 部署环境是:WIN2008R2+IIS7.5+SQL 在谷歌百度一下之后,看到有人说ASP.NET网站发布的时候需要预编译.这样不但能解决首次速度慢的问题,还能把cshtml的内容编译.这样别人就看不到我们VIEW的代码了.那么打开VS. 发布的时候把"在发布期间预编译"打钩,点击后面的设置取消选择"允许更新预编译站点".这样编译出来的网站view被编译成.compiled文件.并且根目录下多了一个PrecompiledApp.config文件. 部署到服务器上之后,问题依旧 那么继续谷歌百度一下,看到另一个结局反感是优化IIS.这也是上面要介绍部署环境的原因.因为IIS7.5和IIS8有个很大的区别关于性能.如果部署在IIS8上的话,只需要简单的设置即可.下面是设置方法: IIS8设置 这样就可以解决问题了. 但是在IIS7.5上并没有这些选项,需要安装一个模块:Application Initialization Module for IIS 7.5 下载安装略过不提.主要记录一下配置方法. 打开服务器上的ApplicationHost.config文件.这个文件在IIS的安装目录Config下. 添加如下内容(但是似乎不添加也行)
然后设置网站应用程序和和对应的应用程序池
关键在于应用程序池设置的autoStart="true" startMode="AlwaysRunning" 这两个的意思是自动自动和启动模式. 网站应用程序设置的preloadEnabled="true" 这样设置完成之后网站已经基本可以保证秒开了,基本解决了第一次打开速度很慢的问题.当然还遗留了一个EF首次加载缓慢的问题,额这还不知道怎么解决.似乎是没办法解决的. |
请发表评论