服务电话
网络报修电话:
- 84617234(校园网)
- 88706295(联通)
- 83870087(移动)
- 84618112(电信)
- 82772222(国安)
卡务服务大厅:
- 84635298
最新内容
- 21 Mar
- 15 May
- 27 Feb
- 13 Nov
- 04 Dec
- 07 Jan
校园网自助服务
如何快速的呈现我们的网页
一、我们需达解决的麻烦
* 减少HTTP请求数. 减少HTTP请求数有什么好处
* 降低
* 减少服务器为HTTP连接的进程和线程的开销,如果可能,还会包括GZIP压缩的CPU开销.
* 减小被请求文件大小, 减少请求数据占用的网络带宽.
* 让用户更快的看到想要的结果.
*
* 让浏览器同时能请求更多的数据.
* 提高服务器相应速度.
* 通过版本化控制客户端Cache.
二、如何解决我们的麻烦
A.如何减少HTTP请求数
1、合并JS文件跟CSS文件。
2、合并框架图片以及相对变动较少的图片成一张,通过CSS
3、合理使用本地Cache来缓存JS/CSS/IMAGE。
4、合理使用UserData缓存JS文件,对于FF用户可以单独请求服务器,这样能解决80%用户的问题.代码可以蓉儿(meizz)的js framework1(标注1)。
B.减小被请求文件大小,减少请求数据占用的
1、压缩JS体积:删除JS中空白换行,注释,混淆把长变量换成短变量;
2、压缩CSS体积:删除CSS注释、写法尽量用简写;
3、使用(X)HTML+CSS方式搭建网站结构,提高CSS重用性,来减少(X)HTML文件大小;
4、使用服务器端GZIP压缩JS/ CSS文件,缩小传输文件大小。附注:Apache1跟Apache2的GZIP的效率跟方式不一样的,根据需要自行选择。
嗷嗷补充说明:压缩、合并JS和CSS都由程序处理。而不是自己手动去缩删,不然不利于后期维护。
C.让用户更快的看到想要的结果
用户对于一个站点的白页的忍受
1、方案1:多做一个引导页,让用户体会其中的变化
案例:mail.aol.com中的loading引导页
2、方案2:优先载入页面结构以及结构图片,后一步载入当前页面数据,再后一步载入Iframe,Flash等数据.让用户尽早的看到被打开页面的希望.
D.提高客户端渲染速度
这个问题就比较泛泛了,影响客户端的渲染速度有多方面的,主要目的都是提高程序方面的
1、对于大索引的结构,尽可能的少用索引访问,能用访问
2、字符串拼接尽可能用数组方式
3、大规模添加节点数据,请不要使用appendChild方式,尽量使用类似innerHTML的insertAdjacentHTML方式,FF下需修正(标注1)
E.让浏览器同时能请求更多的数据.
浏览器默认只是支持单域名同时有两个HTTP请求,使用多域名将能把请求数提高,在网络条件优良的情况下,能更快的下载数据,呈现结果.
F.提高服务器相应速度
对于需快速响应的文件,把其放入快速响应的服务器,应该是不错的方案,优化方案请
G.通过版本化控制客户端Cache
通常js/css这类文件改动比较频繁,但是为了加载速度变快,我们有可能需要设定这类文件的过期时间为几天后,这样我们碰到的问题就是,如何及时更新这些在cache的文件?
通过一个简单的配置,通过修改JS的版本来及时告诉浏览器,这些文件必须重新请求了,不要继续使用浏览器cache中的数据. 方案有好几个:
1、手动改这些js的文件名
2、手动改这些js的路径
3、通过URL Rewrite方式来改重定位js路径
4、通过一个在高响应服务器上的一个js配置告知页面,这个页面该链接哪些JS文件
5、大版本不变,小版本不断追加,等一定时间后,
标注
1、meizz的js framework还没出正式版,有兴趣在CSDN的页面翻一下
2、Firefox修正方式
function addHTML(oParentNode, sHTML) {
if(window.addEventListener) {// for MOZ
var oRange = oParentNode.ownerDocument.createRange();
oRange.setStartBefore(oParentNode);
var oFrag = oRange.createContextualFragment(sHTML);
oParentNode.appendChild(oFrag);
}
else {// for IE5+
oParentNode.insertAdjacentHTML("BeforeEnd", sHTML);
}
}
点击下载文件: |