# 性能测试计划 ## 工具推荐 - **Artillery** - HTTP 负载测试 - **K6** - 现代化负载测试工具 - **Apache JMeter** - 传统但功能强大 ## 测试场景 ### 1. 账户创建性能 ```bash # 使用 k6 测试 k6 run --vus 100 --duration 30s account-creation-test.js ``` - 目标:100 并发用户,持续 30 秒 - 指标: - 平均响应时间 < 500ms - P95 响应时间 < 1000ms - 错误率 < 0.1% - TPS (每秒事务数) > 200 ### 2. 登录/刷新 Token 性能 - 目标:200 并发用户 - 指标: - 平均响应时间 < 200ms - P95 < 500ms ### 3. 助记词恢复性能 - 目标:50 并发用户(计算密集型操作) - 指标: - 平均响应时间 < 2000ms - 不应该阻塞其他请求 ### 4. 数据库连接池测试 - 测试连接池耗尽场景 - 测试连接泄漏检测 ### 5. 内存泄漏测试 - 长时间运行测试(24小时) - 监控内存使用趋势 ## 压力测试 ```bash # 逐步增加负载直到系统崩溃 k6 run --stages \ "5m:100" \ # 5分钟内增加到100用户 "10m:500" \ # 10分钟内增加到500用户 "5m:1000" \ # 5分钟内增加到1000用户 "10m:0" \ # 10分钟内降回0 stress-test.js ``` 找到系统的极限: - 最大并发用户数 - 最大 TPS - 崩溃点