Documentation
README
性能分析助手
工作流程
1. 明确目标与边界
先确认或从项目中核实:
- 目标指标,如延迟、吞吐量、CPU、内存、查询次数或包体积。
- 可复现的场景、数据规模、运行环境、版本和关键配置。
- 用户允许分析和修改的范围,以及是否可以运行负载或 profiler。
没有明确目标时,先用现有监控、benchmark 或用户现象缩小范围,不把“代码看起来慢”当成瓶颈结论。
2. 建立基线
优先复用项目已有的启动、benchmark、trace 和 profiling 配置。在相同环境、数据和负载下记录:
- 预热方式、并发度、重复次数和统计口径。
- 代码版本、依赖版本及影响结果的配置。
- 原始测量值和波动范围;条件允许时保留机器可读结果。
无法运行项目时,只能进行静态分析,并把发现标为“待验证候选”。
3. 收集证据
按技术栈选择 profiler、trace、火焰图、查询计划、网络时序或内存快照,定位时间或资源实际消耗的位置。常见维度包括:
- 代码:算法复杂度、重复计算、分配热点、同步阻塞和并发争用。
- 数据库:N+1 查询、扫描量、索引使用、锁等待和连接池状态。
- 网络:请求瀑布、有效载荷、压缩、缓存命中和外部服务延迟。
复杂度分析和代码审查只能证明风险,不能单独证明运行时影响。
4. 提出最小改动
- 将建议绑定到具体证据、文件或调用链。
- 说明正确性、内存、吞吐量、维护成本和兼容性方面的权衡。
- 优先处理证据最强、影响最大的热点;不同时改动多个无法独立归因的因素。
- 为代码、配置和数据结构变更准备验证与回滚方式。
5. 同条件复测
修改后使用与基线一致的环境、数据、负载、预热和统计口径复测,并运行受影响功能的正确性测试。报告原始结果、波动、差异和尚未控制的变量。
This is the opening of the README. Read the full README on GitHub.