美文网首页
《高性能网站建设指南》精缩

《高性能网站建设指南》精缩

作者: 任无名F | 来源:发表于2019-04-19 18:01 被阅读0次

本书成书于08年,是十几年前的事情,所以难免会有一些理论跟不上时代,但是很多原理性的问题,仍然值得我们去学习。
笔者用几小时的时间,通读了本书,并进行了内容的精缩,希望能够帮助到大家~

一、减少http请求

图片地图、雪碧图、合并js/css文件、内联图片

二、使用CDN

没什么好说的~

三、添加Expires头

主要目的是进行http缓存,更好的方案是使用cache-control

Expires与cache-control的区别:
当服务器与客户端的时区差距很大时,Expires设置的过期日期会产生很大的误差;设置Expires过期日期的资源到期之后,服务器需要额外的逻辑来设置新的过期日期;cache-control只有http1.1才支持。

四、压缩资源

主要是使用 Accept-Encodeing: gzip 来对请求资源进行压缩

某些情况需要使用Vary字段

五、将css放在顶部

涉及到浏览器解析html的原理,css文件会阻塞DOM渲染和js执行,所以应该放在顶部

六、将js放在底部

涉及到浏览器解析html的原理,js文件会阻塞DOM树解析,所以应该放在底部

七、避免css表达式

书中提到的表达式多为IE专属,而今IE已不是浏览器的主流,所以这部分可以忽略

八、使用外部js和css

为了使得浏览器能够缓存这些js、css

九、减少DNS查找

通过使用keep-alive和较少的域名来减少DNS查找

十、对js源代码进行精简

本质就是压缩混淆js文件,都9102年了,这已经是前端工程化的必备部分,所以可以忽略

十一、避免重定向

重定向显而易见会增加加载时间

十二、移除重复脚本

前端工程化可以避免这一点

十三、配置ETag

ETag的问题在于,当客户端请求的内容来自于一个服务器集群的时候,尽管文件内容是相同的,不同的服务器仍然会产生不同的ETag标识,这就会导致协商缓存失效。而且,If-None-Match 比 If-modified-Since 优先级更高,所以ETag还会影响其他协商缓存的命中。

十四、使Ajax可缓存

为Ajax请求设置http缓存。主要手段是添加一个长期的Expires头。

相关文章

  • 《高性能网站建设指南》精缩

    本书成书于08年,是十几年前的事情,所以难免会有一些理论跟不上时代,但是很多原理性的问题,仍然值得我们去学习。笔者...

  • 技术书刊

    Javascript# ########《JavaScript设计模式》《高性能网站建设指南》《高性能网站建设进阶...

  • 前端工程系列(二)

    前端工程与性能优化 首先,我们把雅虎14条优化原则,《高性能网站建设指南》以及《高性能网站建设进阶指南》中提到的优...

  • Web16.JavaScript相关概念

    参考 1.高性能网站建设指南2.https://developers.google.com/web/fundame...

  • 高性能网站建设指南

  • 高性能网站建设指南

    本书是Oreilly旗下的关于Web开发相关的技术类的书籍 其中的详情可以在这里看到:高性能网站建设指南 其中本书...

  • 高性能网站建设12原则(上)

    Steve Sounders在《高性能网站建设指南》一书中,提出了12条原则指南。 尽量减少HTTP请求 使用CD...

  • 编写高性能可维护的css代码

    本文主要参考MDN|编写高效的CSS、译文编写高性能高质量的CSS代码、《高性能网站建设指南》、谷歌|优化性能、《...

  • 《高性能网站建设指南》笔记

    标签: 前端 很薄的一本书,介绍了14个用于前端网页优化的规则。 规则一: 减少HTTP请求 问题:网站的加载时间...

  • 如何提升Web性能

    参考《高性能网站建设指南》 规则一:尽量减少HTTP请求。 1.使用CSS Sprites合并图片。2.使用dat...

网友评论

      本文标题:《高性能网站建设指南》精缩

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