SuperAPI AI 工具集

164-java-profiling-verify

编程与开发

查看项目

更新于 10-16 09:02

技能介绍

用途

该技能用于验证 Java 性能优化效果,通过对重构前后剖析结果进行严格对比,判断优化是否达成预期目标,并识别是否引入性能回退。它是 Java Profiling Workflow 的第四步(Verify results)。

主要能力

  • 基线验证:在改动前以相同负载运行剖析器,确认基线产物存在且非空。
  • 重构后数据生成:在相同测试条件下生成新的重构后报告。
  • 指标对比:对内存(泄漏、分配、GC)、CPU(热点、竞争)进行量化对比。
  • 可视化对比:进行火焰图并排分析(side-by-side flamegraph analysis)。
  • 文档记录:将结论写入 profiler/docs/profiling-comparison-analysis-YYYYMMDD.md 与 profiler/docs/profiling-final-results-YYYYMMDD.md。
  • 文件命名:采用 baseline/after 后缀与基于时间戳的组织方式。
  • 验证:确认报告存在、对比指标、识别回退。

使用方式

工作流分为四步:

  1. 阅读验证参考并确认基线数据——阅读 references/164-java-profiling-verify.md,确认基线产物存在且非空。
  2. 生成重构后剖析数据——以与基线相同的负载/测试条件运行剖析,产出可对比的重构后产物。
  3. 对比前后指标与可视化——对内存/CPU/GC/线程进行定量比较,并进行火焰图并排分析。
  4. 记录最终验证结果——创建对比报告与最终结果报告,包含回退、收益以及可复现的场景细节。

应用前需先阅读参考中的对比模板与验证步骤。

适用场景

该技能适用于以下情况:验证性能修复、验证性能、验证内存、验证线程、验证 GC、验证剖析结果、对比重构前后剖析结果、性能基准测试、检查重构后是否出现性能回退。

限制与约束

  • 一致性(CONSISTENCY):基线与重构后必须使用完全相同的测试条件与负载模式。
  • 验证(VALIDATE):对比前确保基线与重构后两组报告都存在且非空。
  • 文档(DOCUMENT):记录测试场景与负载模式以便复现。
  • 边界情况:若请求范围不明确,应停止并先提出澄清问题再应用变更。
  • 边界情况:若缺少必需输入、文件或工具,应报告缺失内容并询问是否继续提供设置指引。
  • 范围说明:相同测试条件至关重要;需记录测试场景;在生成新报告前,先验证应用能使用重构后的代码运行。

其他信息

详细指导、示例与约束参见 references/164-java-profiling-verify.md。关于收费、价格、支持平台等信息,资料暂未提供。