摘记_高性能网站建设指南书评-查字典图书网
查字典图书网
当前位置: 查字典 > 图书网 > 互联网 > 高性能网站建设指南 > 摘记
九天 高性能网站建设指南 的书评 发表时间:2015-06-12 18:06:02

摘记

高性能网站建设指南
性能黄金法则:
只有10%~20%的最终用户响应时间花在了下载HTML文档上。其余的80%~90%时间花在了下载页面中的所有组件上
HTTP Overview
可以用压缩来减小响应大小:
- 浏览器:HTTP头里加Accept-Encoding: gzip,deflate
- 服务器:HTTP头里加Content-Encoding: gzip
条件GET
- 浏览器:If-Modified-Since: Wed, 22 Feb 2006 04:15:54 GMT
- 服务器:Last-Modified: Wed, 22 Feb 2006 04:15:54 GMT; 304 Not Modified
Keep-Alive持久链接
- 浏览器:Connection: keep-alive
- 服务器:Connection: keep-alive


1.减少http请求
- 合并图片
- css sprites
- 内联图片,<img src=“data:image/gif;base64,xxxx…”>
- 合并脚本和样式表
2.使用内容发布网络
Content Delivery Networks是一组分布在不同地理位置的web服务器。
业界领头羊是Akamai Technologies
一般用CDN发布静态内容,如图片、脚本、样式表等
3.添加expires头
服务器:Expires: Thu, 15 Apr 2015 20:00:00 GMT
cache-control使用max-age制定组件被缓存多久,以秒为单位
服务器:Cache-Control: max-age=315360000
两者同时出现时max-age会覆盖expires
4.压缩组件
浏览器:Accept-Encoding: gzip, default
服务器:Content-Encoding: gzip
一般压缩html, css和js,图片和pdf不值得压缩
通常对大于1kb或2kb的文件进行压缩,mod_gzip_minimum_file_size控制希望压缩的文件最小值。
当有代理时需要在服务器中添加Vary: Accept-Encoding
5.将css放在顶部
6.将脚本放在底部
并行下载,使用两个主机名
但脚本会阻塞下载
也可使用延迟脚本(defferred), DEFER属性表明脚本不包含document.write,可让浏览器继续进行呈现
7.避免css表达式
例如background: expression((new Date()).getHours()%2 ? "#bbb" : "#fff")
不得不用时尽量用一次性表达式
8.使用外部js和css
尽管内敛会减少http请求,但外链可以使js和css被缓存
主页使用内联反而更好
加载后下载,使用内联然后onload所需的js和css方便后续访问
9.减少dns查找
减少唯一主机名数量,但要与并行下载相平衡,一个主机名默认可并行下载两个文件
10.精简js
JSMin and Dojo Compressor
11.避免重定向
浏览器:

HTTP 1.1 301 Moved Permanently (302 Moved Temporarily)
Location: http://xxx.com
Content-Type: text/html

也可以:

<meta http-equiv=“refresh” content=“1; url=http://xxx.com”>

也可以用js的document.location
有时如果url结尾需要有一个/而没有出现时会产生一个重定向
重定向经常用于跟踪用户流量的流向,对于内部用户可以使用referer日志来分析,外部可以用信标beacon
12.移除重复脚本
13.配置或移除ETag
实体标签(Entity Tag)是web服务器和浏览器用于确认缓存组建的有效性的一种机制。
用法类似last-modified
对于服务器来说是唯一的,不适用于分布式
14.使Ajax可缓存

如何测试
http请求图表使用ibm page detailer (http://alphaworks.ibm.com/tech/pagedetailer)
建议:yslow (http://yslow.org/)
性能分析: dynatrace (http://www.dynatrace.com/en_us/application-performance-management/products/performance-center.html)

展开全文
有用 2 无用 0

您对该书评有什么想说的?

发 表

推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读