浏览“http://dev.bindsolution.com/”时,网站开始处理时间过长。为什么这样?
正在使用“CSS Sprites”,“css”和“JavaScript”缩小,尽管我不认为问题是这样。
为什么第一次请求网站的速度非常慢?
PS:我正在巴西访问答案 0 :(得分:5)
当你第一次在发布后请求网站时,ASP.Net需要编译并加载应用程序。
答案 1 :(得分:0)
IIS可能已经关闭了一些需要启动的工作线程,你的appDomain将启动并加载你的dll中的所有类并将这些类JITing到机器代码,ASP.Net也将自己进行预热(初始化所有东西)在管道中需要,可能预先编译一些视图等。)
更新
第一个请求很慢,因为页面必须加载的资源数量,一旦加载,浏览器将缓存它们,不需要再次请求它们(这就是速度改进的原因)。
考虑聚合(并可能压缩)您自己网站上的所有必需资源,并引用您网页中的所有资源。
答案 2 :(得分:0)
这取决于第一个请求是什么意思..在重新部署/重新启动应用程序(或应用程序池)之后它是第一个请求,对应用程序的第一个请求很慢可能是IIS必须启动asp.net工作进程。
此链接还应为您提供更多详细信息:http://msdn.microsoft.com/en-us/library/ms366723.aspx
如果你的意思是任何用户的第一次请求,那么用户需要下载的文件就会有开销,同时网站可能会在Session_start中做一些过程密集的事情,我会检查所有这些.. < / p>
此外,如果您可以访问代码,则可以对其进行一些性能分析。我强烈推荐JetBrains的dotTrace。
仅供参考,我与JetBrains无关。只是喜欢他们的sw / tools
答案 3 :(得分:0)
可能是第一次加载很慢并且后续加载更快,因为资产(js,css,images)被缓存用于后续视图而不需要加载。
firefox插件yslow将为您提供有关大小和加载速度的详细信息。
还可以运行smush.it(yslow的一部分)来缩小图像大小。它会使图像变小,但没有明显的差异。