SuperAPI AI 工具集

performance-reviewer

通用与其它

查看项目

更新于 10-16 00:03

技能介绍

用途:面向 Rails 开发者的性能审查技能,在功能实现后或代码评审阶段系统检查性能问题,目标是发现 N+1 查询、缺失索引、内存问题与扩展性瓶颈。

主要能力:按框架逐项检查数据库(N+1、缺失索引、低效查询、计数器缓存)、算法复杂度(O(n^2) 或更差且无正当理由)、内存(大集合批处理、内存高效加载)、缓存(记忆化机会、Rails.cache 用于昂贵计算)、后台任务(应异步的长任务)、锁(事务范围、锁时长、事务内外部调用)以及防御性措施(strict_loading、查询超时)。

性能基准:无正当理由不得使用差于 O(n log n) 的算法;所有被查询列必须有索引;API 响应低于 200ms;集合按批处理(最多 1000 项)。

验证命令:

检查 schema 中缺失的索引

grep -E "(belongs_to|has_many)" app/models/*.rb | grep -v "optional:"

查找潜在 N+1 查询

grep -rn ".each.." app/ --include=".rb" | grep -v find_each

检查慢查询日志(若启用)

tail -100 log/development.log | grep "Load"

输出格式:包含性能摘要、关键问题表(问题、影响、解决方案)、扩展性评估(10 倍与 100 倍数据下的预测)以及按优先级排列的建议操作。

限制:资料未提供安装方式、收费信息、支持平台或具体使用步骤;反模式与修复细节需参考 references/patterns.yaml。