程序员

性能优化

2020-06-09  本文已影响0人  爱看小说的叶子

1: 资源合并压缩,减少htpp请求和下载的大小。

例如工程化中的多个js、css合并一个文件 和 接口尽量合并。

2:使用CDN。

解:(内容发布网络,最快的速度进行下载)

3: 预解析DNS。

1:这个是解析页面里面a标签,有些浏览器不会解析,加了这个强制会进行预解析

<meta http-equiv="x-dns-prefetch-control" content="on" />

2: 在页面header中使用link标签来强制对DNS预解析

 <link rel="dns-prefetch" href="http://bdimg.share.baidu.com" /> 

注意:域名解析大概占20ms。

参考文章:

https://www.cnblogs.com/rongfengliang/p/5601770.html

4:缓存。

    延申问题缓存有什么方式?什么样的原理?什么样的请求头?

强缓存

概念: 不通过服务器协商,然后直接使用

expires: 过期的日期。

cache-control:  多少秒时间过期。

注意:(1) 当expires 和  cache-control 同时存在时, cache-control优先级更高。

(2) expires缺点:是服务器的时间和客户端的时间有可能不一致。

协商缓存

概念: 通过服务器的协商,如果不需要更新header信息,否则才返回资源。

Etag( 每个资源的唯一标识字符串 ,服务器判断资源是否修改)、Last-Modified (上次的时间传送给服务器的)

Last-Modified (服务器返回的字段) /   If-Modified-Since(再次请求时候带上这个服务器返回的时间)和  Etag(服务器返回字段资源符号)/  If-None-Match (请求将资源符号带上)

参考文章: https://blog.csdn.net/m0_37747665/article/details/83045494

5: 异步加载

延申有哪几种方式?这几种方式的区别?

:动态脚本的加载。 // 这个是指js创建script标签这样加载的

script 标签的属性 defer、async。指html加载完成后,在进行加载

区别:defer按照script排列的顺序按照顺序进行加载,而async则不一样。

上一篇 下一篇

猜你喜欢

热点阅读