性能优化术语

响应时间
TTFB 从请求到响应第一个字节的时间

白屏时间
FP 从请求到渲染第一个像素点的时间,白屏时间
FCP 从请求到页面任意部分完成渲染的时间,灰屏时间
LCP 从请求到页面最大内容完成绘制的时间 (通常是指元素在用户可视区域内的可见大小)

交互时间
TTI 最早可交互时间

解析时间
DCL DOMContentLoaded 事件被触发时间,通常是 HTML文档被完全加载和解析完成之后,无需等待样式,图像和子框架的完成加载的时间

优化目标

1. 白屏时间

分为几个方面

通过打包分析工具,webpack,vite都有对应的分析插件,分析打包的包体积和分布

1.1 减小体积

tree-shaking
大包换小包, momentjs换成dayjs,lodash按需加载
大包拆成几个小包,并行加载

1.2 异步加载

非首屏使用的包,全部异步加载
非必须使用的,按需加载
路由页面文件,按需加载
大的图表文件,例如echarts,异步加载
图片文件懒加载

1.3 关键路径优化

服务端渲染
内联关键css
骨架屏

2. 卡顿优化

2.1 动画开启硬件加速
2.2 对象池,回收对象
2.3 动画使用requestAnimationFrame
2.4 动画由dom换成canvas
2.5 减少回流和重绘,通过chrome分析工具

posted @   全玉  阅读(77)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2019-06-26 服务器推送(Server push)技术总结
2018-06-26 双向绑定的极简实现
2017-06-26 dom方法insertAfter的实现
2017-06-26 斐波那契数列的递归和非递归解法
点击右上角即可分享
微信分享提示