1.6 KiB
1.6 KiB
性能压测说明(App 管理接口)
本仓库默认不携带外部压测工具(如 wrk/oha/hey),因此提供“可复现的压测方法 + 指标口径 + 建议阈值”,并建议在 CI/CD 或预发环境执行并归档结果。
1) 压测对象
GET /platform/apps:分页列表(典型读流量)POST /platform/apps:创建(写流量)POST /platform/apps/{app_id}/status-change-requests:写流量
2) 指标口径
- 吞吐:RPS
- 延迟:p50 / p95 / p99
- 错误率:非 2xx 比例
- 资源:CPU / 内存 / DB 连接池占用
3) 环境准备
- 数据库完成迁移:
./scripts/db/migrate.sh && ./scripts/db/verify.sh - 用平台租户 token 作为压测 token(必须具备
iam:app:read等权限) - 建议在压测前预填充一定数量 apps(如 1k/10k)
4) 示例(wrk)
若环境已安装 wrk:
wrk -t4 -c32 -d30s \\
-H "Authorization: Bearer <token>" \\
"http://127.0.0.1:3000/platform/apps?page=1&page_size=20"
5) 示例(纯 curl 简易压测)
该方式不统计精确吞吐与分位数,但可快速验证稳定性与错误率:
for i in $(seq 1 200); do
curl -s -o /dev/null -w "%{http_code}\\n" \\
-H "Authorization: Bearer <token>" \\
"http://127.0.0.1:3000/platform/apps?page=1&page_size=20" &
done
wait
6) 建议阈值(参考)
GET /platform/apps:p95 < 100ms(本机/同 AZ),错误率 < 0.1%POST /platform/apps:p95 < 200ms,错误率 < 0.1%
实际阈值应结合数据库规模、索引、网关链路与部署规格确定。