Yahoo军规

一、尽可能的减少HTTP请求

每一个图片,文字,js文件,css文件都是一个请求。

可以通过合并来请求来减少HTTP请求

比如:图片为一个请求,js文件为一个请求,css为一个请求

二、使用CDN

CDN:在离你最近的地方,放置一台性能好,链接顺畅的副本服务器,让你能够以最近的距离,最快的速度获取内容。

三、添加Expire/Cache-Control头

如果apache开启了expire模块,当浏览器发送资源请求时,apache同时会返回一个expire的http头,这个头的内容是一个时间值,值就是资源在本地的过期时间、存在本地。在本地缓存阶段,找到一个对应的资源值,当前时间还没超过资源的过期时间,就直使用这一个资源,不会发送http请求。

Cache-Control是http协议中常用的头部之一,顾名思义,他是负责控制页面的缓存机制,如果该头部指示缓存,缓存的内容也会存在本地,操作流程和expire相似,但也有不同的地方,cache-control有更多的选项,而且也有更多的处理方式。

四、启用GZIP压缩

五、将CSS放在页面最上面

六、将js放在最下面

七、避免在css中使用Expressions

八、把JS和CSS放到外部文件中

优点:提高了js和css的复用性,减小页面体积,提高了js和css的可维护性

缺点:增加了请求数(可以缓存下来)

写在页面内的情况:

1、只应用于一个页面。

2、不经常被访问到。

3、脚本和样式很少。

九、减少DNS查询

十、压缩js和css

十一、避免重定向

重定向:用户想要访问的a被重新指向了b。

十二、移除重复的脚本

十三、配置实体标签(ETag)

ETag:Entity Tag,一种标识

如果服务器和浏览器的ETag一样,就直接使用自己的,不需要再在服务器请求。

十四、使用AJAX缓存

post不使用

get使用

原文地址:https://www.cnblogs.com/baqiphp/p/5953385.html