标签:
一、减少HTTP请求
1.合并CSS、js:每次调用js、css都要发送一次http请求,所以并不是分开写好几个文件比较好
js、css压缩。js压缩可以用grunt
HTML优化:
CSS优化:
js优化:
2.图片优化
二、减少DOM操作
减少对DOM元素的查询和修改,jquery也是有弊端的
方法:
三、使用JSON格式来进行数据交换
JSON是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式。同时,JSON是 JavaScript原生格式,这意味着在 JavaScript 中处理 JSON数据不需要任何特殊的 API 或工具包。
与XML序列化相比,JSON序列化后产生的数据一般要比XML序列化后数据体积小
注意json的格式一定要严格符合标准
四、js、css文件的加载顺序
css放在<head>里,
js放在<body>结束前:浏览器在执行JavaScript代码时,不能同时做其它事情,即<script>每次出现都会让页面等待脚本的解析和执行(不论JavaScript是内嵌的还是外链的),JavaScript代码执行完成后,才继续渲染页面。这个也就是JavaScript的阻塞特性。
因为这个阻塞的特点,建议把JavaScript代码放到</body>标签以前,这样既能有效的防止JavaScript的阻塞,又能使得页面的HTML结构能更快的释放。
五、CDN加速
CDN(Content Delivery Network,内容分发网络)
其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决 Internet网络拥挤的状况,提高用户访问网站的响应速度。
不足:实时性不好
六、控制cookie大小和污染、session不要存入大数据
Cookie是本地的磁盘文件,每次浏览器都会去读取相应的Cookie
使用Cookie跨域操作时注意在适应级别的域名上设置coockie以便使子域名不受其影响
针对 Web 组件使用域名无关性的 Cookie
设置合理的生命周期,清除时期
session是存在服务器的,所以如果存入大量的数据会给服务器带来很大的压力
六、 添加 Expires 或 Cache-Control 信息头 (Add an Expires or a Cache-Control Header)
各个浏览器都有针对的方案, Apache 例子【注意:下面的说明例子还不够精细,具体的环境上还要加一些调整】:
ExpiresActive On
ExpiresByType image/gif "modification plus 1 weeks"Lighttpd 启用 mod_expire 模块 后:
$HTTP["url"] =~ "\.(jpg|gif|png)___FCKpd___1quot; {
expire.url = ( "" => "access 1 years" )
}Nginx 例子参考:
location ~* \.(jpg|gif|png)$ {
if (-f $request_filename) {
expires max;
break;
}
}
标签:
原文地址:http://www.cnblogs.com/calamus/p/5894627.html