.NET网站速度问题 (加载出现4-5秒空白页面)
.NET 网站,启用了 gzip压缩,访问速度慢,输入网址后,会有4-5秒的空白页面,之后才出现网页内容,领导说空白时间太长,速度慢,度娘一个周了,没有实质的效果,请大家帮忙出出主意啊,急求啊!救命啊! .NET 速度 空白页面 网站加速 --------------------编程问答-------------------- 总得先找到问题再去有针对性地搜索网站慢有很多原因,排除接入商的问题
客户端问题(中毒,网络异常)
html或者js问题(html标签未封闭或写错,js死循环,timer使用不规范或者没有clear==)
不良外链
服务器忙
程序设计上的问题(导致Request的生命周期中一个或者多个被拉长)
服务端处理时出错
数据库异常(连接数过多或者锁表==)
暂时想到这么多
你可以先将首页存一个html传上去(不连数据库),如果还很慢,可以排除后面三种 --------------------编程问答-------------------- 用f12 devtools、firebug等工具的性能检测功能看看是哪里耗时比较多。 --------------------编程问答--------------------
我把首页导成一个html之后,访问还是会出现4-5秒的空白时间,给人感觉是不是网站没东西,然后4-5秒后就出现页面了,
动态的页面在本机上测试,不存在空白页面时间,秒开啊,在服务器上就不行了,服务器是联通(cpu X3220,2G内存),客户端是电信的,跨网会影响速度,可怎么会这么长呢,4-5秒呢 是空白的,客户端联通访问,也会有2秒的空白时间
--------------------编程问答--------------------
用工具看了,在空白时间内,会在加载js和图片,可图片做了 延时加载了啊,像是页面预读一遍之后在加载出现页面,现在就想输入网址之后,先出现点东西(导航之类的),让客户知道网站是能打开的,不然在那4-5秒的空白等待,会误以为打不开,现在就是这个问题 --------------------编程问答-------------------- 4,5秒确实有点长啊。本地快,服务器慢,看起来是内容太大了,网络传输比较慢,本地没有这个问题。
尝试减小图片体积,js在最后加载,并且压缩一下。js, Html中不要的东西尽量删除。 --------------------编程问答-------------------- js放在最后加载,看看这篇文章:
Where To Include JavaScript Files In A Document
http://robertnyman.com/2008/04/23/where-to-include-javascript-files-in-a-document/ --------------------编程问答-------------------- 将JS放到页面最后!
JS的加载会导致页面变慢。 --------------------编程问答-------------------- 另外,可以尝试使用一些站长工具网站,检测一下你的页面。
看看加载慢是因为什么原因。
--------------------编程问答--------------------
楼主把网址贴上来啊,大家好能针对性看看 --------------------编程问答--------------------
网址:http://www.aucanlink.com/大家看看把,JS能放到后面的都放了,实在没法了现在 --------------------编程问答--------------------
4,5秒确实有点长啊。本地快,服务器慢,看起来是内容太大了,网络传输比较慢,本地没有这个问题。
尝试减小图片体积,js在最后加载,并且压缩一下。js, Html中不要的东西尽量删除。
JS放最后了,也压缩了,CSS也压了,图片是多,做了延时加载了,可在这段空白时间, 用工具看到,图片也是在通信预读,虽然没显示, --------------------编程问答-------------------- 是不是网页上文字太少了?
将各个DIV的高度宽度固定下,然后放入一些文字,就可以点击了。
让图片慢慢加载吧。
很多网站图片不做延时加载,页面也读取挺快。只不过图显示的慢。
或许是延时加载卡住了? --------------------编程问答-------------------- 第一次慢,第二次很快啊。 --------------------编程问答--------------------
是不是网页上文字太少了?
将各个DIV的高度宽度固定下,然后放入一些文字,就可以点击了。
让图片慢慢加载吧。
很多网站图片不做延时加载,页面也读取挺快。只不过图显示的慢。
或许是延时加载卡住了?
不少啊,一些新闻和图片,主要是这两,网站:http://www.aucanlink.com/ --------------------编程问答--------------------
第一次慢,第二次很快啊。
是啊,关键想改这个第一次加载呢,我们毕竟是要有新客户的,如果他们首次访问就慢,那效果很不好啊, --------------------编程问答-------------------- 是不是网速问题???
第一次点开虽然比第二次慢,但是也就一秒多。我们这儿网速也说不上好 --------------------编程问答--------------------
是不是网速问题???
第一次点开虽然比第二次慢,但是也就一秒多。我们这儿网速也说不上好
服务器联通5M专线呢,我电信客户端打开,第一次4-5秒等待,第二次,秒开了就,这个第一次不好办啊 --------------------编程问答-------------------- 不需要立即加载的js(比如广告,图片延迟加载..),可以放在页面靠后的地方
<script type="text/javascript" defer="defer"></script>延迟加载脚本
服务器联通5M也太慢了吧,上面架的网站多,你分到的带宽也只是一部分
居民宽带都已经几十M了,考虑换接入商吧 --------------------编程问答-------------------- 中间部分全部是 动态从数据库获取的?
中间部分那么多标签栏目,不知是一次数据全取出还是每一个栏目取一次
建议用ajax,或者cache 来访问
--------------------编程问答--------------------
中间部分全部是 动态从数据库获取的?
中间部分那么多标签栏目,不知是一次数据全取出还是每一个栏目取一次
建议用ajax,或者cache 来访问
中间每个国家就两个栏目是动态的,每一个各取一次,关键是我导成htm浏览也是这个速度
导成htm:http://www.aucanlink.com/123.htm
--------------------编程问答--------------------
中间部分全部是 动态从数据库获取的?
中间部分那么多标签栏目,不知是一次数据全取出还是每一个栏目取一次
建议用ajax,或者cache 来访问
中间每个国家就两个栏目是动态的,每一个各取一次,关键是我导成htm浏览也是这个速度
导成htm:http://www.aucanlink.com/123.htm
楼主试过 在服务器 只放一个html页面,只写几个文字,
先看下是否是 服务器响应慢
--------------------编程问答--------------------
中间部分全部是 动态从数据库获取的?
中间部分那么多标签栏目,不知是一次数据全取出还是每一个栏目取一次
建议用ajax,或者cache 来访问
中间每个国家就两个栏目是动态的,每一个各取一次,关键是我导成htm浏览也是这个速度
导成htm:http://www.aucanlink.com/123.htm
楼主试过 在服务器 只放一个html页面,只写几个文字,
先看下是否是 服务器响应慢
试过,那样挺快的 只有文字:http://www.aucanlink.com/0.htm
然后把首页输出的html,删除所有图片,只剩下文字,速度就快了,之前有图文的时候也用工具看过,
刚加载出现空白时图片、CSS、JS也有通信(如图),4-5秒之后就出现页面了,能不能改成刚输入网址,先出现个导航栏,不出现空白等待页面;
图是加载出现空白时加载的文件: --------------------编程问答-------------------- 我这边火狐第一次就是秒开,不过IE9下面JS有一部分识别不了。(function($, window, document, undefined) 不知道是不是这段有问题。JS有问题的话谷歌浏览器会变慢倒是。 --------------------编程问答--------------------
我这边火狐第一次就是秒开,不过IE9下面JS有一部分识别不了。(function($, window, document, undefined) 不知道是不是这段有问题。JS有问题的话谷歌浏览器会变慢倒是。
我这火狐也是等4秒,您那是什么线路?难道是线路问题?我是电信的 --------------------编程问答-------------------- <script src="/js/jquery.min.js" type="text/javascript"></script>
应在
<script src="/js/jquery.lazyload.js" type="text/javascript"></script>
上啊。 --------------------编程问答-------------------- 我這速度還比較快啊。 --------------------编程问答--------------------
我這速度還比較快啊。
你的宽带是什么线路?电信?联通? 打开网站,没有4秒的空白等待页面? --------------------编程问答-------------------- 聯通8M帶寬,一開就能出來,不過圖片出來的有點慢。 --------------------编程问答-------------------- 下面的链接无法打开,请及时修正或删除
http://ww2.sinaimg.cn/thumbnail/5f6eb063jw1e6kw5dld2cj20c80fgtbn.jpg (状态码:503) --------------------编程问答-------------------- 这个js ScrollPic.js 200 1.9 KB 2572ms --------------------编程问答-------------------- 楼上的几位恢复的很好啊!
大致思路是这样的:
1)根据页面执行的顺序页面的JS 一定要放在最后执行,因为有些JS加载时花很多时间;
2)分布式的延迟加载 先加载页面的的前面部分 其它的延迟加载;
--------------------编程问答--------------------
聯通8M帶寬,一開就能出來,不過圖片出來的有點慢。
难道 就是 线路问题了?我这是电信的 ,服务器是联通的
代码 还有优化的空间吗 ? --------------------编程问答--------------------
楼上的几位恢复的很好啊!
大致思路是这样的:
1)根据页面执行的顺序页面的JS 一定要放在最后执行,因为有些JS加载时花很多时间;
2)分布式的延迟加载 先加载页面的的前面部分 其它的延迟加载;
请问 分布式的延迟加载 先加载页面的的前面部分 其它的延迟加载; 这个怎么解决,不大明白呢?技术不到家啊,能详细说一下吗 --------------------编程问答-------------------- chrome 速度还可以 --------------------编程问答-------------------- http://www.cnblogs.com/fishtreeyu/archive/2011/03/12/1982067.html
延迟加载的一个例子。把一些图片什么的大的资源后加载 页面的样式提前加载 --------------------编程问答--------------------
http://www.cnblogs.com/fishtreeyu/archive/2011/03/12/1982067.html
延迟加载的一个例子。把一些图片什么的大的资源后加载 页面的样式提前加载
图片做了延时加载了,效果不明显呢 --------------------编程问答--------------------
chrome 速度还可以
没出现 空白等待页面吗?
郁闷 啊, --------------------编程问答--------------------
.NET 网站,启用了 gzip压缩,访问速度慢,输入网址后,会有4-5秒的空白页面,之后才出现网页内容,领导说空白时间太长,速度慢,度娘一个周了,没有实质的效果,请大家帮忙出出主意啊,急求啊!救命啊!
楼主把网址贴上来啊,大家好能针对性看看
网址:http://www.aucanlink.com/大家看看把,JS能放到后面的都放了,实在没法了现在
很快就出来了啊。是不是你的机器有问题? --------------------编程问答-------------------- 可以参考下jdon这个网站的架构 --------------------编程问答--------------------
很快就出来了啊。是不是你的机器有问题?
你的电脑是不是联通的线路啊
--------------------编程问答-------------------- 其实我看了下你的网站 3-5秒之内加载完毕是可以的 。8秒时有点慢 10秒以上是不能接受的。所以你的网站基本上没啥大的问题 你们领导太挑剔了啥都不懂又装高深哈!如果说超过8秒的话必须得解决了! --------------------编程问答--------------------
很快就出来了啊。是不是你的机器有问题?
你的电脑是不是联通的线路啊
长城宽带。。。10M --------------------编程问答--------------------
其实我看了下你的网站 3-5秒之内加载完毕是可以的 。8秒时有点慢 10秒以上是不能接受的。所以你的网站基本上没啥大的问题 你们领导太挑剔了啥都不懂又装高深哈!如果说超过8秒的话必须得解决了!
关键领导他看打开之后,出现空白页等待了,就感觉速度慢,给客户造成不好的影响,很头疼啊,现在就想着是输入网址,先展现出点内容,哪怕是视觉上的 也是可以啊,毕竟客户们也会用工具查看你的速度,只是从感官上来的 --------------------编程问答--------------------
其实我看了下你的网站 3-5秒之内加载完毕是可以的 。8秒时有点慢 10秒以上是不能接受的。所以你的网站基本上没啥大的问题 你们领导太挑剔了啥都不懂又装高深哈!如果说超过8秒的话必须得解决了!
关键领导他看打开之后,出现空白页等待了,就感觉速度慢,给客户造成不好的影响,很头疼啊,现在就想着是输入网址,先展现出点内容,哪怕是视觉上的 也是可以啊,毕竟客户们也会用工具查看你的速度,只是从感官上来的
毕竟客户们也不会用工具查看你的速度,只是从感官上来的 --------------------编程问答--------------------
很快就出来了啊。是不是你的机器有问题?
你的电脑是不是联通的线路啊
看了这个网站,你图片太大了。90K完全可以压缩到十几。
再压就失真了,感觉,有没有不失真的压缩图片的方法?谢谢 --------------------编程问答-------------------- 图片用的是png格式么?
对了,30楼提到了js貌似时间有点儿长?不过你写在最后了应该不是问题、、、还是检查下吧 --------------------编程问答-------------------- 你先看在本地有出现这个问题吗?
--------------------编程问答--------------------
你先看在本地有出现这个问题吗?
本地浏览,直接秒出啊,刷刷的 --------------------编程问答-------------------- 除 --------------------编程问答-------------------- 用chrome 或者ff可以直接查看你网站加载速度时间 ,或者下载插件 ,这种很多 ,看时间在哪个地方是慢的 。然后重点解决最慢的 --------------------编程问答--------------------
用chrome 或者ff可以直接查看你网站加载速度时间 ,或者下载插件 ,这种很多 ,看时间在哪个地方是慢的 。然后重点解决最慢的
关键是现在想解决出现空白页是什么情况,不明白这个问题,
什么原因会在、出现这个空白页面的等待时间呢? --------------------编程问答-------------------- 就是用 firebug - 网络-所有 (图中圈出来的地方的时间问题)
--------------------编程问答-------------------- photoshop 等都可以压缩图片啊,不会失真的。。。。 --------------------编程问答--------------------
photoshop 等都可以压缩图片啊,不会失真的。。。。
图片都是PS处理过了,再处理就有失真了 --------------------编程问答-------------------- 可能是IIS中程序应用池自动回收的问题,在IIS中找到网站所属的程序应用池,右键-》属性-》设置在下列时间回收工作进程,譬如半夜2:00,然后设置一个任务计划,每天2点的时候浏览一下网站,那么第一个人访问就不会慢了 --------------------编程问答--------------------
可能是IIS中程序应用池自动回收的问题,在IIS中找到网站所属的程序应用池,右键-》属性-》设置在下列时间回收工作进程,譬如半夜2:00,然后设置一个任务计划,每天2点的时候浏览一下网站,那么第一个人访问就不会慢了
能说说任务计划,怎么做吗,小白一个啊我 --------------------编程问答-------------------- IS 有一种机制,默认会在IIS空闲一定时间段后,将应用程序池进行回收,这个时间段在IIS6中默认是20分钟,在IIS7中默认是1740分钟。两个配置都不合理,都会导致当应用程序池被回收后,第一次访问网站的时候速度很慢。如果一直不回收应用程序池,会导致占用内存过大。
我们的希望是每天凌晨进行应用程序池回收,并同时进行第一次访问,这样每天工作时间访问的时候速度都是很快的。
具体做法是:
1. 在IIS中配置,应用程序池的回收时间,固定为每天都0:00:00进行;
2. 在Windows中制作一个计划任务,执行一个“activateWebSite.bat”批处理命令,固定为每天的0:10:00进行;
“activateWebSite.bat”批处理命令的内容如下:
@echo off
taskkill /im iexplore.exe /f /t
start http://www.baidu.com?1=1
ping 127.0.0.1 -n 5
taskkill /im iexplore.exe /f /t
start http://www.google.com.hk
ping 127.0.0.1 -n 5
taskkill /im iexplore.exe /f /t
命令含义是:
先关掉所有的IE进程(需要设置默认浏览器是IE)
然后通过浏览器访问指定网站网址,一般为本服务器上配的网站地址;
然后通过ping来延迟5秒钟,以方便IE打开页面,当然延迟多少秒可以自己设定;
如果有多个网站,则可以挨个访问;
最后在关闭掉所有的IE进程。 --------------------编程问答--------------------
.NET 网站,启用了 gzip压缩,访问速度慢,输入网址后,会有4-5秒的空白页面,之后才出现网页内容,领导说空白时间太长,速度慢,度娘一个周了,没有实质的效果,请大家帮忙出出主意啊,急求啊!救命啊!
那就把相应mime类型相关的gzip去掉呗。你难道没有想到?反正我是信了。 --------------------编程问答--------------------
服务器联通5M专线呢,我电信客户端打开,第一次4-5秒等待,第二次,秒开了就,这个第一次不好办啊
要是你的网站平均20秒钟才有一个访问请求,那么你趁早不要使用asp.net了。如果有多一点人再访问,你还硬说什么“第一次”吗? --------------------编程问答--------------------
IS 有一种机制,默认会在IIS空闲一定时间段后,将应用程序池进行回收,这个时间段在IIS6中默认是20分钟,在IIS7中默认是1740分钟。两个配置都不合理,都会导致当应用程序池被回收后,第一次访问网站的时候速度很慢。如果一直不回收应用程序池,会导致占用内存过大。
我们的希望是每天凌晨进行应用程序池回收,并同时进行第一次访问,这样每天工作时间访问的时候速度都是很快的。
具体做法是:
1. 在IIS中配置,应用程序池的回收时间,固定为每天都0:00:00进行;
2. 在Windows中制作一个计划任务,执行一个“activateWebSite.bat”批处理命令,固定为每天的0:10:00进行;
“activateWebSite.bat”批处理命令的内容如下:
@echo off
taskkill /im iexplore.exe /f /t
start http://www.baidu.com?1=1
ping 127.0.0.1 -n 5
taskkill /im iexplore.exe /f /t
start http://www.google.com.hk
ping 127.0.0.1 -n 5
taskkill /im iexplore.exe /f /t
命令含义是:
先关掉所有的IE进程(需要设置默认浏览器是IE)
然后通过浏览器访问指定网站网址,一般为本服务器上配的网站地址;
然后通过ping来延迟5秒钟,以方便IE打开页面,当然延迟多少秒可以自己设定;
如果有多个网站,则可以挨个访问;
最后在关闭掉所有的IE进程。
话说,服务器不能访问外网网页,这个方法岂不没法实现了 --------------------编程问答--------------------
.NET 网站,启用了 gzip压缩,访问速度慢,输入网址后,会有4-5秒的空白页面,之后才出现网页内容,领导说空白时间太长,速度慢,度娘一个周了,没有实质的效果,请大家帮忙出出主意啊,急求啊!救命啊!
那就把相应mime类型相关的gzip去掉呗。你难道没有想到?反正我是信了。
不是因为启用 gzip网站才出现慢的,我的意思是已经启用了gzip,速度有所改善,可总体来说访问还是慢,有没有别的方法加速 --------------------编程问答-------------------- 哥哥,你网站上的图片也太大了吧.... --------------------编程问答-------------------- 首页有几兆大小了吧,慢点正常
补充:.NET技术 , C#