Zah*_*raa 6 performance publish iis-6 web-applications
我有一个使用C#用ASP.Net 3.0编写的Web应用程序,生产机器是带有IIS 6.0和sql server 2005的Windows Server 2003.
应用结构
以下显示了我的ASP.net Web应用程序的结构:
IIS中的根应用程序(// localhost/es)包括公共页面,例如:母版页,主题,用户控件,图像文件夹.根应用程序下的子项目数(// localhost/es/sub-project).删除子项目中的web.config子项目的汇编文件位于根应用程序的bin文件夹下(子项目属性>> compile >>构建输出路径:..\bin \我的应用程序是一个3层Web应用程序(偏见层,数据层和表示层.此外,每个aspx页面的代码都在cs文件后面)
IIS设置
应用程序池回收工作程序"1740分钟后"进程处理空闲超时工作进程空闲后"20分钟"Ping工作进程每"30秒"
工作程序处理器的启动时间限制"90秒"工作程序处理器的关闭时间限制"90秒"
应用程序配置
缓存限制内存中的ASP文件"500"
缓存磁盘"2000"上的有限ASP文件
部署应用程序:
我将Web应用程序及其所有文件发布到生产服务器.
问题 :
应用程序第一次运行速度非常慢,加载需要10秒钟,但是每次下次请求页面时都会更快.我相信第一次请求页面时,它会编译并且通常比其他请求需要更多时间,因为页面位于高速缓存中.这里的问题是为什么第一次编辑页面需要花时间?
尝试解决问题:
我试着做以下事情:
但是,应用程序仍然开始缓慢但随后变得更快.
请帮助诊断并解决这个问题.
除了天空所说的,您可以运行"预热脚本"作为部署过程的最后一步.虽然这不会加快第一次编译所需的时间,但使用这样的脚本至少可以防止用户看到启动缓慢.看看这样一个脚本的例子:http: //programmerramblings.blogspot.com/2008/09/aspnet-site-warmup.html
第一个对您的应用程序的请求很慢的另一个原因可能是IIS必须在第一个请求期间启动asp.net工作进程.但是,这不应影响对其他页面的第一次请求.