首次启动速度慢的问题记录IIS性能优化
Posted zheng510ke
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了首次启动速度慢的问题记录IIS性能优化相关的知识,希望对你有一定的参考价值。
ASP.NET网站发布的时候需要预编译.这样不但能解决首次速度慢的问题,还能把cshtml的内容编译.这样别人就看不到我们VIEW的代码了.那么打开VS.
发布的时候把"在发布期间预编译"打钩,点击后面的设置取消选择"允许更新预编译站点".这样编译出来的网站view被编译成.compiled文件.并且根目录下多了一个PrecompiledApp.config文件.
部署到服务器上之后,问题依旧
那么继续谷歌百度一下,看到另一个结局反感是优化IIS.这也是上面要介绍部署环境的原因.因为IIS7.5和IIS8有个很大的区别关于性能.如果部署在IIS8上的话,只需要简单的设置即可.下面是设置方法:
IIS8设置
应用程序池-高级设置-启动模式:AlwaysRunning
应用程序池-高级设置-进程模型-闲置超时:1740 (分钟)
应用程序-高级设置-常规-预加载已启用:True
这样就可以解决问题了.
但是在IIS7.5上并没有这些选项,需要安装一个模块:Application Initialization Module for IIS 7.5
下载安装略过不提.主要记录一下配置方法.
打开服务器上的ApplicationHost.config文件.这个文件在IIS的安装目录Config下.
添加如下内容(但是似乎不添加也行)
< globalModules > < add name = "ApplicationInitializationModule" image = "%windir%System32inetsrvwarmup.dll" /> </ globalModules > |
然后设置网站应用程序和和对应的应用程序池
< system.applicationHost > < applicationPools > < add name = "West Wind West Wind Web Connection" autoStart = "true" startMode = "AlwaysRunning" managedRuntimeVersion = "v4.0" managedPipelineMode = "Integrated" > < processModel identityType = "LocalSystem" setProfileEnvironment = "true" /> </ add > </ applicationPools > < sites > < site name = "Default Web Site" id = "1" > < application path = "/MPress.Workflow.WebQueueMessageManager" applicationPool = "West Wind West Wind Web Connection" preloadEnabled = "true" > < virtualDirectory path = "/" physicalPath = "C:Clients…" /> </ application > </ site > </ sites > </ system.applicationHost > |
关键在于应用程序池设置的autoStart="true" startMode="AlwaysRunning" 这两个的意思是自动自动和启动模式.
网站应用程序设置的preloadEnabled="true"
这样设置完成之后网站已经基本可以保证秒开了,基本解决了第一次打开速度很慢的问题.当然还遗留了一个EF首次加载缓慢的问题,额这还不知道怎么解决.似乎是没办法解决的.
以上是关于首次启动速度慢的问题记录IIS性能优化的主要内容,如果未能解决你的问题,请参考以下文章
Day679.优化并提高Tomcat启动速度 -深入拆解 Tomcat & Jetty
解决win10上vs首次调试启动慢的问题,win10下vs2008 首次debug慢的问题,可做参考。
在 Python 多处理进程中运行较慢的 OpenCV 代码片段