mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-05-19 23:33:07 +08:00
docs: salvage remaining stable zh-CN skill translations
This commit is contained in:
committed by
Affaan Mustafa
parent
c3246dbe34
commit
4e88912a58
94
docs/zh-CN/skills/benchmark/SKILL.md
Normal file
94
docs/zh-CN/skills/benchmark/SKILL.md
Normal file
@@ -0,0 +1,94 @@
|
||||
---
|
||||
name: benchmark
|
||||
description: 使用此技能测量性能基线,检测PR前后的回归,并比较堆栈替代方案。
|
||||
origin: ECC
|
||||
---
|
||||
|
||||
# 基准测试 — 性能基线及回归检测
|
||||
|
||||
## 使用场景
|
||||
|
||||
* 在 PR 前后测量性能影响
|
||||
* 为项目建立性能基线
|
||||
* 用户反馈"感觉变慢"时
|
||||
* 发布前确保达到性能目标
|
||||
* 对比不同技术栈的性能表现
|
||||
|
||||
## 工作原理
|
||||
|
||||
### 模式 1:页面性能
|
||||
|
||||
通过浏览器 MCP 测量真实浏览器指标:
|
||||
|
||||
```
|
||||
1. 导航至每个目标 URL
|
||||
2. 测量核心网页指标:
|
||||
- LCP(最大内容绘制)— 目标 < 2.5 秒
|
||||
- CLS(累积布局偏移)— 目标 < 0.1
|
||||
- INP(与下一次绘制的交互)— 目标 < 200 毫秒
|
||||
- FCP(首次内容绘制)— 目标 < 1.8 秒
|
||||
- TTFB(首字节时间)— 目标 < 800 毫秒
|
||||
3. 测量资源大小:
|
||||
- 页面总重量(目标 < 1MB)
|
||||
- JS 包大小(目标 < 200KB gzip 压缩后)
|
||||
- CSS 大小
|
||||
- 图片重量
|
||||
- 第三方脚本重量
|
||||
4. 统计网络请求数量
|
||||
5. 检查阻塞渲染的资源
|
||||
```
|
||||
|
||||
### 模式 2:API 性能
|
||||
|
||||
对 API 端点进行基准测试:
|
||||
|
||||
```
|
||||
1. 每个端点请求 100 次
|
||||
2. 测量:p50、p95、p99 延迟
|
||||
3. 追踪:响应大小、状态码
|
||||
4. 负载测试:10 个并发请求
|
||||
5. 与 SLA 目标进行对比
|
||||
```
|
||||
|
||||
### 模式 3:构建性能
|
||||
|
||||
测量开发反馈循环效率:
|
||||
|
||||
```
|
||||
1. 冷构建时间
|
||||
2. 热重载时间 (HMR)
|
||||
3. 测试套件执行时间
|
||||
4. TypeScript 检查时间
|
||||
5. 代码检查时间
|
||||
6. Docker 构建时间
|
||||
```
|
||||
|
||||
### 模式 4:前后对比
|
||||
|
||||
在变更前后运行以测量影响:
|
||||
|
||||
```
|
||||
/benchmark baseline # 保存当前指标
|
||||
# ... 进行更改 ...
|
||||
/benchmark compare # 与基线进行比较
|
||||
```
|
||||
|
||||
输出结果:
|
||||
|
||||
```
|
||||
| Metric | Before | After | Delta | Verdict |
|
||||
|--------|--------|-------|-------|---------|
|
||||
| LCP | 1.2s | 1.4s | +200ms | WARNING: WARN |
|
||||
| Bundle | 180KB | 175KB | -5KB | ✓ BETTER |
|
||||
| Build | 12s | 14s | +2s | WARNING: WARN |
|
||||
```
|
||||
|
||||
## 输出
|
||||
|
||||
将基线数据以 JSON 格式存储在 `.ecc/benchmarks/` 中。通过 Git 追踪,便于团队共享基线。
|
||||
|
||||
## 集成
|
||||
|
||||
* CI:在每个 PR 上运行 `/benchmark compare`
|
||||
* 配合 `/canary-watch` 进行部署后监控
|
||||
* 配合 `/browser-qa` 完成发布前完整检查清单
|
||||
Reference in New Issue
Block a user