美文网首页
web性能优化的一些东西

web性能优化的一些东西

作者: zjh111 | 来源:发表于2018-03-27 19:29 被阅读0次

    减少dns查询,将要加载的东西,例如css、js等尽量放在一个域名下,减少dns查询次数

    TCP连接复用keep-alived
    http 1.0中默认是关闭的,需要在http头加入"Connection: Keep-Alive",才能启用Keep-Alive;http 1.1中默认启用Keep-Alive,如果加入"Connection: close ",才关闭。目前大部分浏览器都是用http1.1协议,也就是说默认都会发起Keep-Alive的连接请求了,所以是否能完成一个完整的Keep- Alive连接就看服务器设置情况。
    http2.0有多路复用。

    HTTP请求
    减少cookie体积,不滥用cookie。

    ETag等缓存减少下载资源,但仍会发送请求,文件没有被改动过,则返回304。
    ETag通过生成一段字符串(MD5等)验证请求资源是否改变。

    Last-Modified客户端第二次请求此URL时,根据HTTP协议的规定,浏览器会向服务器传送If-Modified-Since报头,询问该时间之后文件是否有被修改过:如果服务器端的资源没有变化,则自动返回 HTTP 304(Not Changed.)状态码,内容为空,这样就节省了传输数据量。

    使用cache-control,时间未到期不会发送请求(设置max-control)'setHeader('Cache-Control','max-age=xx')。

    浏览器会同时发送多个请求,每个域名请求有数量限制(增请求加域名数量,与dns矛盾)。当文件很少时减少域名,当文件很多时,适当增加域名。
    使用gzip压缩 请求端加上content-encoding:gzip(消耗用户cpu,文件越大越需要gzip)。

    <!DOCTYPE html>一定要写,不能写错。

    尽量减少标签。

    动态dns 转到相应的CDN(内容分布网络)。

    css放head js放</body>前
    css下载完后才会开始渲染,放在后面也会阻塞渲染,放在上面早一些加载css。
    一般js不会影响完整的页面,放在后面尽早显示页面,减少空白页面的时间。放在后面可以获取之前的节点。

    相关文章

      网友评论

          本文标题:web性能优化的一些东西

          本文链接:https://www.haomeiwen.com/subject/hwvscftx.html