Gahing's blog Gahing's blog
首页
知识体系
  • 前端基础
  • 应用框架
  • 工程能力
  • 应用基础
  • 专业领域
  • 业务场景
  • 前端晋升 (opens new window)
  • Git
  • 网络基础
  • 算法
  • 数据结构
  • 编程范式
  • 编解码
  • Linux
  • AIGC
  • 其他领域

    • 客户端
    • 服务端
    • 产品设计
软素质
  • 面试经验
  • 人生总结
  • 个人简历
  • 知识卡片
  • 灵感记录
  • 实用技巧
  • 知识科普
  • 友情链接
  • 美食推荐 (opens new window)
  • 收藏夹

    • 优质前端信息源 (opens new window)
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Gahing / francecil

To be best
首页
知识体系
  • 前端基础
  • 应用框架
  • 工程能力
  • 应用基础
  • 专业领域
  • 业务场景
  • 前端晋升 (opens new window)
  • Git
  • 网络基础
  • 算法
  • 数据结构
  • 编程范式
  • 编解码
  • Linux
  • AIGC
  • 其他领域

    • 客户端
    • 服务端
    • 产品设计
软素质
  • 面试经验
  • 人生总结
  • 个人简历
  • 知识卡片
  • 灵感记录
  • 实用技巧
  • 知识科普
  • 友情链接
  • 美食推荐 (opens new window)
  • 收藏夹

    • 优质前端信息源 (opens new window)
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 前端基础

  • 应用框架

  • 工程能力

  • 应用基础

    • 兼容性

    • 前端安全

    • 国际化

    • 性能优化

      • 如何实现 script 并行异步加载顺序执行
      • yahoo前端优化35军规
      • 前端首屏优化 | 借助客户端能力提升 H5 首屏的 8 个手段
      • 前端优化性能指标
      • 4 种常用的前端性能分析工具
        • Lighthouse
        • Chrome Devtools Performance
        • Bundle Analyzer
        • React Devtools Profiler
        • 其他
      • 前端性能预算经验
      • 前端图片分层加载详解
      • 基于CDN的前端优化可行性分析
      • 浅谈图片分层加载与懒加载
      • 浅谈 preload 预加载
      • 用 CAP 理论指导 Hybrid App 离线策略优化
      • 长列表

      • 面试官问:如何实现 H5 秒开?
    • 换肤

    • 无障碍

  • 专业领域

  • 业务场景

  • 大前端
  • 应用基础
  • 性能优化
gahing
2023-08-17
目录

4 种常用的前端性能分析工具笔记

常见的性能分析工具有以下几种:

  1. Lighthouse:性能评分、优化建议
  2. Chrome Devtools Performance:火焰图、帧率变化、网络链路等细粒度性能分析
  3. Bundle Analyzer:产物分析
  4. React Devtools Profiler:组件级分析

每种工具针对不同的分析方向,实际场景需要组合运用。

# Lighthouse

输出多维度指标打分,包括性能、可访问性、最佳实践、SEO、PWA,并提供优化建议

适用场景:

  • 无线上埋点可看,需要评估当前性能状态
  • 进行性能优化,需要评估优化后效果

工具使用:

  • Chrome Devtools 自带 Lighthouse,开启无痕模式测试 5 次,去除极值后取均值。
    • 优点:直观、方便
    • 缺点:手动统计
  • lighthouse npm 包 (opens new window)
    • 优点:支持定制,方便统计
    • 缺点:不够直观,有额外使用成本

# Chrome Devtools Performance

基于 Chrome Devtools 的 Performance 工具,输出火焰图、帧率变化、网络链路、渲染截图 等全链路数据,方便细粒度分析

适用场景:

  • 分析数据请求耗时瓶颈(网络链路)
  • 分析函数执行耗时瓶颈(火焰图)
  • 分析 FPS 和页面卡顿情况,关注长任务(帧率变化 & 火焰图)

工具使用:

  • 火焰图:横向是时间戳(耗时),纵向是调用栈

前端性能优化——Performance的使用攻略 (opens new window):这篇文章通过一个官方demo (opens new window) 讲解了 Performance 的使用。通过帧率图定位问题位置,通过火焰图查看分析函数耗时,并最终找到了性能卡点 - 重排导致的渲染耗时。

# Bundle Analyzer

对构建产物进行分析,查看模块体积大小和占比

适用场景:

  • 分析产物体积,方便裁剪优化,关注是否按需引入,更轻量的包代替

工具使用:

  • 对于 Webpack 项目,可以集成 - webpack-bundle-analyzer (opens new window) 插件,打包时将输出分析报告

# React Devtools Profiler

React Devtools 调试工具的 Profiler 模块;其他框架比如 Vue 也有类似的工具。

适用场景:

  • 分析组件渲染耗时,避免重渲染问题

工具使用:

  • 开启录制,操作页面,会收集组件耗时
  • 观察组件耗时是否符合预期,并针对不必要的重渲染进行优化

# 其他

  • perfsee (opens new window):字节开源的性能分析工具,原 maiev,集成了 bundle 分析、lighthouse 评估、可视化火焰图等工具。
编辑 (opens new window)
上次更新: 2024/09/01, 23:56:56
前端优化性能指标
前端性能预算经验

← 前端优化性能指标 前端性能预算经验→

最近更新
01
浅谈代码质量与量化指标
08-27
02
快速理解 JS 装饰器
08-26
03
Vue 项目中的 data-v-xxx 是怎么生成的
09-19
更多文章>
Theme by Vdoing | Copyright © 2016-2024 Gahing | 闽ICP备19024221号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式