当前位置: 首页 > news >正文

前端页面性能

提升页面性能的方法

  1. 资源压缩合并,减少HTTP请求
  1. 非核心代码异步加载

异步加载方式?

1)动态脚本加载、2)defer、3)async(在加载js的时候在script标签上添加这两个属性,<script src="./test.js" charset="utf-8" defer></script>)

异步加载区别?

defer: HTML解析完成后执行,如果是多个,按照加载的顺序依次执行。

async:加载完成后立即执行,,若是多个,执行顺序和加载顺序无关,那个文件加载完,哪个先执行。

  1. 利用浏览器缓存

缓存分类?

  • 强缓存:不问服务器是否能用这个文件,直接使用缓存的文件。以服务器后下发的时间为准。

Expires Expires:Thu,21 Jan 2017 23:39:02 GMT (绝对时间)

Cache-Control Cache-Control:max-age=3600(相对时间)

  • 协商缓存

Last-Modified If-Modified-Since

Etag If-None-Match

  1. 使用CDN

  1. 预解析DNS

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

//大部分浏览器是https协议的地址默认关闭a标签链接dns解析的,这一句可以强制打开a标签的dns解析

<link rel="dns-prefetch" href="//host_name_to_prefetch.com">//dns预解析,不加这一句也会自动预解析

http://www.lryc.cn/news/28522.html

相关文章:

  • 2023-03-04 反思
  • 奇思妙想:超链接唤起本地应用
  • 初识数据结构——“数据结构与算法”
  • 华为OD机试Golang解题 - 计算网络信号
  • ESP32编译及运行错误记录
  • GEE开发之降雨(CHIRPS)数据获取和分析
  • TypeScript中面向对象
  • Transformer 模型:入门详解(1)
  • 深入理解js中的new关键字
  • RT-Thread Nano(2) - 线程
  • 真香,Grafana开源Loki日志系统取代ELK?
  • 机器学习|多变量线性回归 | 吴恩达学习笔记
  • 高并发内存池
  • springboot mybatis-plus 对接 sqlserver 数据库 批处理的问题
  • Acwing---843. n-皇后问题——DFS
  • Android事件分发机制
  • python版协同过滤算法图书管理系统
  • Redis基础入门
  • 【微服务】Feign实现远程调用和负载均衡
  • Windows使用QEMU搭建arm64 ubuntu 环境
  • NodeJS安装
  • Gin 优雅打印请求与回包内容
  • 关于k8s中ETCD集群备份灾难恢复的一些笔记
  • 【设计模式之美 设计原则与思想:设计原则】19 | 理论五:控制反转、依赖反转、依赖注入,这三者有何区别和联系?
  • 2023年全国最新高校辅导员精选真题及答案13
  • 【XXL-JOB】XXL-JOB定时处理视频转码
  • optuna用于pytorch的轻量级调参场景和grid search的自定义设计
  • 语法篇--汇编语言先导浅尝
  • 【ID:17】【20分】A. DS顺序表--类实现
  • 【java web篇】Tomcat的基本使用