记一次前端《性能优化》,首屏优化

首先要知道,性能优化无非两点:更快的请求、更轻的体态

更快的请求

  1. DNS缓存了解一下,内容不多,一搜就有
  2. cdn(大图、大文件、类库),现在各种云的都能提供这个,看谁做的更好了(命中率,回源率),核心原理是负载均衡:你请求后给你找到一个最佳的服务器节点。其实大概知道就好了,实际上你都碰不到这些代码,都是七牛、腾讯阿里云都给你做好的了,你花钱部署上去,直接请求地址就好了。
  3. 浏览器缓存,两点:强缓存,协商缓存。简单说就是前者直接使用首次请求的内容,过期时间内不会再发起请求。后者每次会问后端内容有变吗?再做决定。
  4. http2了解下,会比较复杂,主要是对头部信息压缩、缓存、链路复用,对于多次请求,提高速度不是一点两点
  5. 资源合并、域名分片。前者代表就是雪碧图,小小图标其实可以用css、base64实现,没必要做一次请求。域名分片就是分多个域名就行请求,因为浏览器对同域名的请求次数是6-8次,不能同时上百个请求并行丢出去,要排队了。如果你用了http2了 就不要做资源合并和域名分片了。

更轻的体态

  1. gzip压缩,标配来的(需要后端配合)。但是图片这些不能压,让七牛这些来处理,有自带api
  2. webp格式图片,压缩特屌,但是有浏览器兼容性问题,可以前端判断下否则显示原格式
  3. 图片懒加载勉强算这一分类吧,要准备显示你了才加载图片
  4. 路由懒加载也算吧,但是大型项目再用,原理是把逻辑代码文件拆成了很多小文件,到这个路由再加载,对应文件就优化了首屏加载情况。
  5. 还有个就是打包时候去掉.map文件,好像默认是取消了的,它是关于报错信息查找的。

顺便引入一个以前懵懂时期的文章超链接

猜你喜欢

转载自blog.csdn.net/weixin_45629623/article/details/111179900