Lyrics


< More and better />


性能优化

性能优化:

请求数量方面

1.合并脚本和样式表,减少http 请求的次数

  1. css 雪碧图(css精灵): 将多张图片文件合并成一张图片,进而减少http 请求,利用(backgrond-image,background-repeat,background-position)组合进行图片定位,精确定位出图片的位置。

  2. 按需加载

  3. 划分主域: ,在http 请求中 浏览器客户端在同一时间,针对同一域名下的请求有一定的限制,超过限制数目请求就会被阻塞,划分主域,配置静态资源专用域,目的就是解决这一问题,但是不易过多,否则 DNS 查询时间就会加长

浏览器的最大并发 6~8

请求宽带方面:

1.( 压缩代码) 开启Gzip 服务端启用 Gzip 可以有效的减少数据传输量,Gzip 对于基于文本的文件(css,js,htmll) 压缩效果最好,现在浏览器都是支持Gzip 并且都是自动请求该压缩

  1. 精简 js ,移除重复脚本
  1. 压缩图片或者选用合适的图片的格式(webP 优于JPG ,PNG 优于GIF)
    可以使用css3,svg,incofont 代替图片

缓存方面:

  1. 使用cdn ,内容分发网络能有效的减少资源响应时间,提升用户体验 ( 基本思路是避开影响数据传输,是内容传输更快)
  1. 使用外部 javascript 和css (因为浏览器可以将外部的js,css文件进行缓存,而如果将其写成内敛样式,或者嵌入HTML文档中,每次请求都要下载,

  2. 添加 Exprires 头,或者Cache-control :max-age, 来设置缓存时间, Expries 是设置到什么时候过期,Cache-control 是设置从现在开始多久时间之后过期,但是没有办法更新缓存

4 . 配置Etage 实体标签,是一种web 缓存验证机制,语序客户端进行缓存协商,使得缓存缓存更加高校,如果资源没有发生改变,服务器就不需要发送一个完整的相应

  1. 使用ajax进行缓存

其他

js 脚本在Body 中,就是在下面, css在head中,使用Link 不要使用@inmport