性能工程Skill perf

性能工程是一种专注于分析应用程序性能、识别瓶颈并实施优化措施的技能。通过性能分析、缓存策略、代码优化和监控设置,提升应用响应速度和效率,适用于解决慢速应用、扩展基础设施前的优化等场景。关键词:性能优化、应用性能、瓶颈分析、缓存、监控、DevOps。

DevOps 0 次安装 0 次浏览 更新于 3/12/2026

name: perf description: 分析应用程序,优化瓶颈,并实现缓存。用于性能问题或优化任务。

性能工程

分析、优化应用程序性能。

何时使用

  • 应用程序缓慢或无响应
  • 用户报告性能问题
  • 扩展基础设施之前
  • 优化关键路径
  • 设置监控

优化流程

  1. 测量 - 在优化前进行性能分析
  2. 识别 - 找到最大的瓶颈
  3. 优化 - 首先修复影响最大的问题
  4. 验证 - 用指标确认改进

性能分析命令

# Node.js 性能分析
node --prof app.js
node --prof-process isolate-*.log > profile.txt

# Python 性能分析
python -m cProfile -o output.prof script.py
python -m pstats output.prof

# Go 性能分析
go tool pprof http://localhost:6060/debug/pprof/profile

常见瓶颈

数据库

  • 缺少索引(在WHERE/JOIN列上添加索引)
  • N+1查询(使用急切加载)
  • 大结果集(添加分页)

内存

  • 内存泄漏(检查事件监听器、闭包)
  • 大对象(使用流代替缓冲)
  • 没有TTL的缓存(添加过期时间)

CPU

  • 同步操作(改为异步)
  • 复杂算法(优化或缓存)
  • 不必要的计算(记忆化)

网络

  • 请求过多(批量/合并)
  • 负载过大(压缩、分页)
  • 没有缓存(添加CDN、浏览器缓存)

性能预算

指标 目标
加载时间 (3G) <3s
加载时间 (4G) <1s
API响应时间 <200ms
捆绑大小 <500KB
LCP <2.5s
FID <100ms
CLS <0.1

输出格式

## 性能报告

**之前:** [基线指标]
**之后:** [改进后的指标]
**改进:** [百分比]

### 识别的瓶颈

1. [问题] - 影响:高/中/低

### 应用的优化

1. [更改] → [结果]

示例

输入: “API 缓慢” 操作: 分析端点,识别慢查询,优化,验证改进

输入: “页面加载时间过长” 操作: 分析捆绑包,检查网络,优化关键路径,添加缓存