当面试官问你如何进行性能优化时,你该怎么回答?
背景
当你这样说的时候:压缩代码、打包代码、雪碧图、cdn、事件代理、
说明你对网站性能优化缺少一个整体的认识
性能优化是什么
从前端的角度,分页面加载时间 和 页面运行效率
从浏览器打开到页面渲染完成,花费了多少时间
主要的过程是:1
2
3
4
5浏览器解析 -> 查询缓存 -> dns查询 -> 建立链接 ->
服务器请求处理 -> 服务器发送响应 -> 客户端收到页面 ->
解析html -> 构建渲染树 -> 开始显示内容(白屏时间)->
首屏加载完成(首屏时间)-> 用户可交互(DOMContentLoaded)->
加载完成(load)
页面加载时间监控
推荐 PerformanceTiming 可以获取页面加载的数据:
1 | dns解析时间: domainLookEnd - domainLookStart |
服务器部分优化要点
后端可以对缓存、dns查询时间,链接时间,处理请求时间,响应时间等进行优化
前端部分优化要点
前端可以对白屏时间,首屏时间,可交换时间,加载完成时间进行优化