hello-perf
优化性能、处理数据库查询、实现缓存、懒加载、分页、打包优化,或代码涉及大数据集循环、并发操作、内存管理时使用。
Source facts
- Repository
- hellowind777/helloagents
- Last source activity
- March 28, 2026 at 09:03
- Detected SKILL.md language
- Chinese
- Stars
- 710
- Forks
- 97
Install options
The review-first prompt is selected by default. You can switch to a direct command or download a local copy.
Review the source files
Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.
Showing SKILL.md
SKILL.md
Source instructions · Read-only preview- name
- hello-perf
- description
- 优化性能、处理数据库查询、实现缓存、懒加载、分页、打包优化,或代码涉及大数据集循环、并发操作、内存管理时使用。
性能相关代码必须遵循以下规范。
## 编码前
先定位性能瓶颈(I/O / 计算 / 内存),再写代码。
## 查询优化
- 禁止 N+1 查询:使用 JOIN、批量加载、dataloader
- 大数据集必须分页,不一次加载全部
- 数据库索引覆盖常用查询条件
- 只查需要的字段(SELECT 具体列,不用 SELECT *)
## 缓存策略
- 读多写少的数据 → 缓存(内存/Redis)
- 设置合理的 TTL
- 缓存失效策略:写时失效 > 定时过期
- 防止缓存穿透(空值缓存)和雪崩(随机 TTL)
## 前端性能
- 代码分割 + 路由级懒加载
- 图片:WebP/AVIF、懒加载、srcset 响应式
- 声明 width/height 或 aspect-ratio 防止布局偏移
- 关键 CSS 内联,非关键 CSS 异步加载
- 50+ 项列表使用虚拟滚动
## 算法与并发
- 注意时间复杂度,禁止嵌套循环处理大数据集(O(n²)+)
- Map/Set 查找 O(1) vs Array.includes O(n)
- 批量操作优于逐条操作
- 高频事件(scroll/resize/input)使用 debounce/throttle
## 交付检查
- [ ] 无 N+1 查询
- [ ] 列表接口有分页
- [ ] 图片已优化(格式/懒加载/尺寸声明)
- [ ] 无嵌套循环处理大数据集
View on GitHub