用途:面向性能优化场景,要求先剖析再改动,并用行为证明保证优化前后结果一致。适用于处理慢、瓶颈、热点、profile、p95、延迟、吞吐量或算法效率等问题。
核心规则:先剖析;证明行为未变;一次只改一处。
强制循环:1. 基线,使用 hyperfine --warmup 3 --runs 10 'command';2. 剖析,使用 cargo flamegraph / py-spy / clinic flame;3. 证明,每次改动保存黄金输出并写同构证明;4. 实现,仅做评分 ≥ 2.0 的改动,每次提交只动一个杠杆;5. 验证,使用 sha256sum -c golden_checksums.txt;6. 重复,重新剖析,因为瓶颈会转移。
机会矩阵:按热点、影响(1-5)、置信度(1-5)、工作量(1-5)计算 Score = Impact×Conf/Effort,仅实现 Score ≥ 2.0 的项。
同构证明模板要求记录:顺序是否保持、平局处理是否不变、浮点是否一致、随机种子是否不变,并用 sha256sum -c golden_checksums.txt 验证黄金输出。
模式分层:第一层低垂果实包括 N+1 转批处理、线性查找转 HashMap、惰性求值、记忆化、缓冲区复用;第二层算法包括二分查找、双指针、前缀和、优先队列;第三层数据结构包括 HashMap、BTreeMap、SmallVec、Arena、Bloom filter。
语言速查:Rust 用 cargo flamegraph,Go 用 go tool pprof /debug/pprof/profile,TS 用 clinic flame -- node app.js,Python 用 py-spy record -o flame.svg -- python script.py。
反模式:不剖析就优化、一次提交多个改动、假设有改进、顺手改行为、跳过黄金输出捕获。
优化前检查清单:捕获基线(p50/p95/p99、吞吐量、内存);剖析确认热点在耗时前 5;机会评分 ≥ 2.0;保存黄金输出;写同构证明;只动一个杠杆;准备回滚计划 git revert <sha>。
工具命令:基准测试 hyperfine --warmup 3 --runs 10 'command';剖析 cargo flamegraph、heaptrack ./binary、strace -c ./binary;验证 sha256sum golden_outputs/* > golden_checksums.txt 与 sha256sum -c golden_checksums.txt。
限制:资料未提供具体收费、平台支持范围或效果保证;方法依赖可复现的基准与黄金输出,若无法捕获稳定输出则同构验证难以执行。