Agent Skills
返回列表
k6 性能压测

k6 性能压测

开发编程 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_c886063e/k6-performance-testing-skill。

技能介绍

解决什么问题

团队发布后才发现性能回归,压测脚本难维护,或缺少统一标准判断瓶颈。手动压测易漏场景,阈值设置不合理导致 CI 频繁失败或放过劣化。

核心能力

  • 四个生产级模板:smoke.js 冒烟验证、stress.js 阶梯加压找拐点、login-flow.js 业务流模拟、api-mix.js 混合流量按权重+突发
  • 关键步骤:先跑 30 秒冒烟确认脚本可用,再阶梯加压定位 p95 与错误率突变点,接着按业务选择模板,最后记录 p95/p99/错误率作基线
  • 阈值自动判定:threshold 不达标时 k6 退出码非 0,CI 直接失败;check 仅断言不阻断
  • 指标定位:通过 http_req_waiting 与 http_req_connecting 区分服务端慢或网络慢

适用边界与注意点

  • 适用:上线前/改动后回归、大促容量评估、登录→下单链路、多接口混合流量、CI 卡门
  • 不适用:极简 GET 压测(用 ab/wrk)、GUI 编排(用 JMeter)、gRPC/Kafka/WebSocket 协议层
  • 必做:先在 staging 测试,生产压测需运维同意;首次跑 VU 从 10-20 起步,第一段 stages ≥30s 暖机;跑两次取稳定值;WAF 需加白名单
  • 禁忌:永远先跑 smoke;sleep 不低于 0.5s;勿压生产环境;threshold 按业务可接受标准设,非理论最优值

输出与扩展

  • stdout 输出 指标名: 值,--summary-export=summary.json 导出 p50/p90/p95/p99
  • 进阶:GitHub Actions 接 smoke.js、k6+InfluxDB+Grafana 监控、k6-operator 分布式压测

使用场景

  • 上线前做性能回归,需要先跑 smoke 验证脚本,再逐步加压找拐点并记录基线
  • 大促前做容量评估,需要模拟登录、浏览、下单链路,并叠加突发混合流量
  • CI 卡门,需要在 PR 阶段用 thresholds 判定 p95 与错误率,不达标让构建失败
  • 收到大量 502/401/429 报错,需要区分是服务端限流、登录态失效还是 WAF 拦截

适合人员

  • 做服务端接口的后端工程师,需要在改动合并前用 smoke 和 stress 脚本跑性能回归并设置 CI 阈值
  • 准备大促或秒杀的容量规划工程师,需要用阶梯加压和混合流量模板评估峰值承载能力
  • 维护 CI 流水线的 DevOps 工程师,需要把 k6 thresholds 接入 PR 卡门并处理退出码
  • 排查线上慢请求的 SRE,需要通过 p95/p99、TTFB 和建连耗时判断瓶颈在服务端还是网络