构建高性能网站的14条法则

在有关构建高性能网站方面《高性能网站建设指南》一书中,其中提到14条性能黄金法则,总结一下记录下来,欢迎专家拍砖......

一、 减少 HTTP 请求
1. 图片地图: 允许在一个图片上关联多个URL,目标URL的选择取决于用户单击了图片上的哪个位置。
2. CSS Sprities: 和图片地图一样,也可以合图片,这个概念就像是使用“显灵板”。要使用CSS Sprities,需要将多个图片合并到一个单独的图片中。
3. 内联图片
4. 合并脚本和样式表

二、使用内容发布网络(CDN Content Delivery Network)
如果应用程序 Web 服务器离用户更近,则一个 HTTP 请求的响应时间将缩短。另一方面,如果组件 Web 服务器离用户更近,则多个HTTP 请求的响应时间将缩短。通过CDN就可以很容易做到。CDN是一组分布在多个不同地理位置的 Web 服务器,用于更加有效地向用户发布内容。主要的CDN服务提供商 Akami、Limelig、SAVVIS等

三、为组件添加长久的 Expires 头
浏览器(和代理)使用缓存来减少 HTTP 请求的数量,并减少HTTP响应的大小,使 Web 页面加载得更快,Web 服务器使用 Expires 头来告诉 Web 客户端它可以使用一个组件的当前副本,直到指定的时间为止。当浏览器自到响应中有一个 Expires 头时,它会和相应的过期时间组件一起保存到其缓存中。只要组件没有过期,浏览器就会使用缓存版本而不会进行任何HTTP请求。
HTTP 1.1 引入了 Cache-Control 头来克服 Expires 头的限制。因为 Expires 头使用一个特定的时间,它要求服务器和客户端的时钟严格同步。另外,过期日期需要经常检查。Cache-Control 使用 max-age 指令指定组件被缓存多久。它以秒为单位定义了一个更新窗。如果从组件被请求开始过去的秒数少于 max-age,浏览器就使用缓存的版本,这就避免了额外的HTTP请求。

四、压缩组件
从HTTP1.1 开始,Web 客户端可以通过 HTTP 请求中的 Accept-Encoding 头来标识对压缩的支持(Accept-Encoding:gzip, deflate),如果 Web 服务器看到请求中有这个头,就会使用客户端列出来的一种来压缩响应。Web服务器通过响应中 Content-Encoding 头来通知 Web 客户端。(Content-Encoding:gzip)
-----------压缩脚本和样式表----------

五、将样式表放在顶部

六、将脚本放在底部

七、避免 CSS 表达式

八、使用外部 JavaScript 和 CSS

九、减少 DNS 查找

十、精简 JavaScript

十一、避免重定向

十二、移除重复脚本

十三、配置 ETag
Entity Tag 实体标签

十四、 使 Ajax 缓存


虽然这14条是书中拿来,但我相信我们程序员中实际的项目开发中,一定也用到了上述的多条法则。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值