SuperAPI AI 工具集

performance-analysis

通用与其它

查看项目

更新于 10-16 09:52

技能介绍

用途:该技能用于性能诊断与容量规划,适用于建立优化前的性能基线、诊断响应慢或CPU/内存问题、识别应用/数据库/基础设施瓶颈、规划负载增长容量、验证优化效果,以及为新功能设定性能预算。

核心方法:强调“先测量”。流程为测量建立基线指标、定位真实瓶颈、提出假设、实施针对性修复、再次测量验证、记录结论。剖析分三个层级:应用层(请求/响应计时、函数/方法剖析、内存分配跟踪)、系统层(进程CPU、内存使用、I/O等待、网络延迟)、基础设施层(数据库查询、缓存命中率、外部服务延迟、资源饱和)。

剖析模式:CPU剖析可用采样剖析器、插桩剖析器、火焰图,关注自身时间、总时间、调用次数;内存剖析可用堆快照、分配跟踪、GC分析,关注堆大小、对象保留、分配速率、GC暂停;I/O剖析覆盖磁盘、网络与数据库,关注延迟百分位(p50/p95/p99)、吞吐量、队列深度。

瓶颈识别:USE方法检查利用率、饱和度、错误;RED方法测速率、错误、持续时间。常见模式包括CPU密集、内存密集、I/O密集、锁竞争、N+1查询。参考Amdahl定律,优先优化占比最大的部分。

容量规划:建立基线、斜坡测试、压力测试、浸泡测试;关注饱和吞吐、80%负载延迟、压力错误率、恢复时间;公式为所需容量=(当前负载×增长系数)+安全余量。

优化模式:快速见效包括缓存、索引、压缩、连接池、批处理;算法改进包括降低复杂度、惰性求值、记忆化、分页;架构变更包括水平扩展、异步处理、读副本、缓存层、CDN。

最佳实践:在类生产环境剖析,用百分位而非平均值,持续监控,设置性能预算并在CI执行,记录基线,控制剖析开销,跨层关联指标,区分延迟与吞吐。反模式包括未测量就优化、只看平均值、仅开发环境剖析、忽略尾部延迟、过早优化、无失效策略的缓存。可用性/价格/平台等资料暂未提供。