performance性能
首屏加载时间
浏览器从相应用户输入网址,到首屏内容渲染完成
(performance.timing.domComplete-
preformance.timing.navigationStart) /1000
解决方案
1. 减少入口文件体积
2. 静态资源本地缓存
3. UI框架按需加载
路由懒加载HTTP缓存
合理利用localstorage
CDN 资源缓存UI框架按需加载避免组建重复打包
(例如A.js是一个常用的库,现在有有个路由使用A.js文件,这样避免重复下载)
CommonsChunkPlugin图片资源压缩
webp图片
jpg图片压缩工具压缩
在线字体图标或者雪碧图,减小http请求压力gzip压缩
查看资源加载时间
performance.getEntries()
优化延迟
DNS 解析 优化DNS prefetch限制Domain数量控制第三方的domain数量不要使用DomainSharding减少TCP创建开销减少页面重定向避免多次重定向当重定向的时候,所有的TCP链接必须重新建立后端 rewriteSPA CDNHTTP2
优化带宽延迟加载lazyload预加载preload 提前加载prefetch延迟加载资源用户行为,难以预测,靠埋点收集 浏览器空闲后加载,可能会点击后才会用的东西不加载noload资源文件 压缩优化 broti chrolme出品转为http传输压缩 nginx做配置gzip 可以压缩好多东西HTTP2.0 头文件压缩minification牺牲代码可读性,减少文件体积通过调用成熟的库来实现codesplitTreeShaking识别代码中的死代码移除按规的Library查看打包后的输出体积图webpack-bundle-analyzer
优化延迟CDN缓存强缓存和协商缓存
performance性能相关推荐
- chrome performance性能检测面板
chrome performance性能检测 参考 https://developer.chrome.com/docs/devtools/evaluate-performance/(主要参考,很多直接 ...
- 2022 Flutter Performance 性能调试工具 devTools
前言 Flutter Release 发版前肯定需要性能测试的,今天我们就一起来讨论下,这个话题可以聊的很深入,我这里就做个抛砖引玉吧. 本节目标 调试工具使用 Performance CPU Pro ...
- 浏览器Performance性能监控使用详解
文章目录 1.Performance 2.测试性能操作流程 3.Performance检测结果详解 区域1:controls[控制栏] 区域2:overview[网页性能总览图] 区域3:火焰图[各项 ...
- 【JavaScript】关于js中performance性能监控
一,performance中会出现的属性字段: memory:只有在chrome才有,提供了基本内存的使用情况 navigation:提供了操作的上下文,包括页面的加载,刷新,重定向次数等等 timi ...
- C++ performance 性能分析工具(sanitizers valgrind gprof gperftools perf)的使用
文章目录 1. time 2. Sanitizers 2.1 内存泄漏`-fsanitize=leak` 2.2 地址错误 `-fsanitize=address` 3. Valgrind 工具集 3 ...
- performance性能监控
详细看MDN上 setTimeout(() => {const {fetchStart, // 开始访问requestStart, // 请求的开始responseStart, // 响应的开始 ...
- performance and scalability
就某种算法而言: performance 性能,可能是某算法的预测(分类)精度.耗时等指标. scalability 可伸缩性,即规模可调整. 应用程序应对负载改变的能力,比如,一个系统在服务器于10 ...
- (二)性能优化的指标和工具 (告别前端小白,成为大神的必经之路)
性能优化的指标和工具 为什么要进行前端性能优化 寻找性能瓶颈 移动端挑战多 性能指标和优化目标[了解行业标准] 网络加载性能 交互体验 总结 RAIL测量模型[黄金指南] 什么是RAIL RAIL的目 ...
- 各种流行深度学习构架的性能对比
知乎上对各种深度学习方法的对比: 在众多的神经网络框架如chainer, caffe, torch,mxnet等之间如何做选择? 四个月前就有人提出更新对比,现在我看还没有对比更新过. Evaluat ...
最新文章
- 【微服务】Spring-Boot整合Consul (自定义服务配置及健康检查)
- 《权力的游戏》最终季上线!谁是你最喜爱的演员?这里有一份Python教程 | 附源码...
- cassandra 存储list数组
- 头文件包含【预处理】(58)
- 工业机器人电柜布线_沙湾附近回收工业锅炉“本信息长期有效”
- 服务器推送系统安装,搭建PXE服务器,推送安装linux系统
- 13.2.7 中间件
- 用DTS将 SQLServer 导出到 Oracle
- php连hiveservice2,hiveserver2启动成功但无法通过beeline连接
- php ajax 表格编辑,php ajax表格实时编辑 PHP Ajax实现表格实时编辑
- [Golang]slice值传递存在的问题
- JQ获取CKeditor的值
- Qt 地址薄 (一) 界面设计
- 水经注万能地图下载器如何导出透明TIF标签
- java 程序计数器_JVM入门系列之程序计数器
- 天然气阶梯是按年还是按月_天然气阶梯不是明年1月1号开始么?怎么现在充气就限量了...
- c语言int作用,C语言中的int max(int x,int y) 究竟有何作用?
- 准确生成电信、联通、移动IP地址段
- 【python】只保留字符串中的英文字母
- android集成twitter登录
热门文章
- 使用Arduino与L298N(红板) 驱动直流电机
- 更快更稳更高效--Ubuntu Kylin 20.04 Pro SP1 正式发布
- 有什么好的OCR软件可以实现图片转文字
- 数据库关系代数中除运算讲解和SQL语句的实现
- 使用adb 命令时提示“adb”既不是内部或外部命令,也不是可运行的程序
- The requested resource(/)is not available问题
- Android 底部导航栏 BottomNavigationBar
- 模糊查询和sql语句的拼接
- cesium去除控件及版权信息
- Linux攻关之基础模块十 特殊权限