页面优化和性能优化,怎么减少http请求

网络方面

减少http请求:主要是优化js、css和图片资源三个方面,因为html是没有办法避免的。a)合并js文件b)合并css文件c)雪碧图的使用d)使用base64表示简单的图片

缓存:可以通过以下方面来描述:

a)DNS缓存

b)CDN部署与缓存

c)http缓存由于浏览器会在DNS解析步骤中消耗一定的时间,所以,对于一些高访问量网站来说,做好DNS的缓存工作,就会一定程度上提升网站效率。CDN缓存,CDN作为静态资源文件的分发网络,本身就已经提升了,网站静态资源的获取速度,加快网站的加载速度,同时也给静态资源做好缓存工作,有效的利用已缓存的静态资源,加快获取速度。http缓存,也是给资源设定缓存时间,防止在有效的缓存时间内对资源进行重复的下载,从而提升整体网页的加载速度。

DOM操作方面

优化网页渲染:

css的文件放在头部,js文件放在尾部或者异步

尽量避免內联样式

DOM操作优化:

避免在document上直接进行频繁的DOM操作

使用classname代替大量的内联样式修改

尽量使用css动画

前面两个操作,其实都是希望减少回流和重绘, 尽量使用css动画,是因为本身css动画比较简单,而且相较于js的复杂动画,浏览器本身对其进行了优化,使用上面不会出现卡顿等问题

数据方面

图片加载处理:a)图片预加载b)图片懒加载

预加载就是提前加载内容。而图片的预加载往往会被用在图片资源比较大,即时加载时会导致很长的等待过程时,才会被使用的。常见场景:图片漫画展示时。往往会预加载一张到两张的图片。「图片懒加载」首先,我们需要明白一个道理:往往只有看到的资源是必须的,其他资源是可以随着用户的滚动,随即显示的。所以,特别是对于图片资源特别多的网站来说,做好图片的懒加载是可以大大提升网页的载入速度的。

异步请求的优化:

使用正常的json数据格式进行交互

部分常用数据的缓存

数据埋点和统计

「JSON交互」,JSON的数据格式轻巧,结构简单,往往可以大大优化前后端的数据通信。「常用数据的缓存」,可以将一些用户的基本信息等常用的信息做一个缓存,这样可以保证ajax请求的减少。同时,HTML5新增的storage的内容,也不用怕cookie暴露,引起的信息泄漏问题。「数据埋点和统计」,对于资深的程序员来说(臣妾做不到),比较了解,而且目前的大部分公司也会做这方面的处理。

你可能感兴趣的:(页面优化和性能优化,怎么减少http请求)