From c6ce7d2d25c9b21a2656abe74de909331d8df954 Mon Sep 17 00:00:00 2001 From: zerosaturation Date: Tue, 16 Jun 2026 22:48:32 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E4=BF=AE=E6=94=B9=E5=8E=8B=E7=BC=A9?= =?UTF-8?q?=E5=B7=A5=E5=85=B7=E7=9A=84=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/Makefile | 33 +++++++-- backend/reports/S1.json | 36 +++++----- backend/reports/S2.json | 46 ++++++------ backend/reports/S4.json | 46 ++++++------ backend/reports/baseline.csv | 6 +- backend/reports/final-report.md | 90 ++++++++++++------------ backend/reports/run-metadata.json | 4 +- backend/reports/s1.png | Bin 16047 -> 17198 bytes backend/reports/s2.png | Bin 23411 -> 23679 bytes backend/reports/s4.png | Bin 20069 -> 24826 bytes backend/scripts/loadgen/seed/cleanup.go | 11 ++- 11 files changed, 150 insertions(+), 122 deletions(-) diff --git a/backend/Makefile b/backend/Makefile index 778293b..10bf577 100644 --- a/backend/Makefile +++ b/backend/Makefile @@ -1,7 +1,7 @@ # TopFans Backend Makefile # 用于简化开发流程 -.PHONY: help install-swagger gen-swagger update-swagger start-swagger start-all stop-all clean build run all loadgen-build loadgen-test loadgen-vet loadgen-ci loadgen-seed-local loadgen-seed-prod-tunnel loadgen-cleanup-local loadgen-cleanup-prod-tunnel +.PHONY: help install-swagger gen-swagger update-swagger start-swagger start-all stop-all clean build run all loadgen-build loadgen-test loadgen-vet loadgen-ci loadgen-seed-local loadgen-seed-prod-tunnel loadgen-cleanup-local loadgen-cleanup-prod-tunnel loadgen-cleanup-prod-tunnel-full loadgen-report # 默认目标 help: @@ -31,8 +31,9 @@ help: @echo "压测 seed 便捷入口 (免去手敲 flag):" @echo " make loadgen-seed-local - seed 写入本地 docker dev (top-fans:15432)" @echo " make loadgen-seed-prod-tunnel - seed 通过 SSH 端口转发写生产 (127.0.0.1:25432)" - @echo " make loadgen-cleanup-local - 清理本地 docker 压测数据" - @echo " make loadgen-cleanup-prod-tunnel - 清理生产 docker 压测数据 (走 SSH 转发)" + @echo " make loadgen-cleanup-local - 清理本地 docker 压测数据 (保留账号)" + @echo " make loadgen-cleanup-prod-tunnel - 清理生产 docker 压测数据 (保留账号,走 SSH 转发)" + @echo " make loadgen-cleanup-prod-tunnel-full - 全清生产压测数据 (含 users + stars,适合彻底收尾)" @echo "" @echo "清理:" @echo " make clean - 清理生成的文件" @@ -56,8 +57,9 @@ help: @echo "压测 seed 便捷入口 (免去手敲 flag):" @echo " make loadgen-seed-local - seed 写入本地 docker dev (top-fans:15432)" @echo " make loadgen-seed-prod-tunnel - seed 通过 SSH 端口转发写生产 (127.0.0.1:25432)" - @echo " make loadgen-cleanup-local - 清理本地 docker 压测数据" - @echo " make loadgen-cleanup-prod-tunnel - 清理生产 docker 压测数据 (走 SSH 转发)" + @echo " make loadgen-cleanup-local - 清理本地 docker 压测数据 (保留账号)" + @echo " make loadgen-cleanup-prod-tunnel - 清理生产 docker 压测数据 (保留账号,走 SSH 转发)" + @echo " make loadgen-cleanup-prod-tunnel-full - 全清生产压测数据 (含 users + stars,适合彻底收尾)" @echo "" @echo "清理:" @echo " make clean - 清理生成的文件" @@ -179,7 +181,7 @@ loadgen-seed-prod-tunnel: loadgen-build --db-host=127.0.0.1 --db-port=25432 --db-name=topfans --db-user=postgres loadgen-cleanup-prod-tunnel: loadgen-build - @echo ">>> 清理生产 docker 压测数据 (走 SSH 隧道)" + @echo ">>> 清理生产 docker 压测数据 (走 SSH 隧道, 保留账号)" @if ! lsof -iTCP:25432 -sTCP:LISTEN >/dev/null 2>&1; then \ echo "❌ 25432 端口未监听,请先: ssh -L 25432:127.0.0.1:5432 -N -f root@101.132.250.62"; \ exit 1; \ @@ -188,6 +190,25 @@ loadgen-cleanup-prod-tunnel: loadgen-build ./bin/seed --cleanup \ --db-host=127.0.0.1 --db-port=25432 --db-name=topfans --db-user=postgres +# 全清:连同 users + stars 都删。适合"压测彻底收尾"场景,不是"多轮压测保留账号"。 +# 跟 loadgen-cleanup-prod-tunnel 的区别仅在末尾的 --full。 +loadgen-cleanup-prod-tunnel-full: loadgen-build + @echo ">>> ⚠️ 全清生产 docker 压测数据 (含 users + stars,走 SSH 隧道)" + @if ! lsof -iTCP:25432 -sTCP:LISTEN >/dev/null 2>&1; then \ + echo "❌ 25432 端口未监听,请先: ssh -L 25432:127.0.0.1:5432 -N -f root@101.132.250.62"; \ + exit 1; \ + fi + @DB_PASSWORD=$$(grep '^DB_PASSWORD=' ../docker/.env.prod | cut -d= -f2) \ + ./bin/seed --cleanup --full \ + --db-host=127.0.0.1 --db-port=25432 --db-name=topfans --db-user=postgres + +# 把 reports/ 下的 S*.json + run-metadata.json 合成 final-report.md +loadgen-report: loadgen-build + @echo ">>> 生成 final-report.md" + @./bin/loadgen --cmd=report --input=./reports --output=./reports/final-report.md + @echo "✅ final-report.md 已更新" + @ls -la reports/final-report.md + # 全部:安装依赖 + 生成文档 + 构建 all: install-swagger gen-swagger build @echo "" diff --git a/backend/reports/S1.json b/backend/reports/S1.json index 78417d2..104a6a7 100644 --- a/backend/reports/S1.json +++ b/backend/reports/S1.json @@ -1,12 +1,12 @@ { "scenario": "S1", - "total_requests": 1072, + "total_requests": 1073, "errors": 0, "five_xx": 0, - "p50_us": 173823, - "p95_us": 182015, - "p99_us": 210175, - "max_us": 223999, + "p50_us": 174463, + "p95_us": 182527, + "p99_us": 207615, + "max_us": 318463, "stages": [ { "stage_idx": 1, @@ -14,21 +14,21 @@ "total_requests": 300, "errors": 0, "five_xx": 0, - "p50_us": 112063, - "p95_us": 122815, - "p99_us": 138751, - "max_us": 214527 + "p50_us": 142079, + "p95_us": 151039, + "p99_us": 174719, + "max_us": 242431 }, { "stage_idx": 2, "target_rps": 10, - "total_requests": 387, + "total_requests": 388, "errors": 0, "five_xx": 0, - "p50_us": 174335, - "p95_us": 182015, - "p99_us": 203519, - "max_us": 259199 + "p50_us": 174591, + "p95_us": 182271, + "p99_us": 211583, + "max_us": 336639 }, { "stage_idx": 3, @@ -36,10 +36,10 @@ "total_requests": 385, "errors": 0, "five_xx": 0, - "p50_us": 173823, - "p95_us": 182015, - "p99_us": 210175, - "max_us": 223999 + "p50_us": 174463, + "p95_us": 182527, + "p99_us": 207615, + "max_us": 318463 } ] } diff --git a/backend/reports/S2.json b/backend/reports/S2.json index 7d8cf69..fed253d 100644 --- a/backend/reports/S2.json +++ b/backend/reports/S2.json @@ -1,45 +1,45 @@ { "scenario": "S2", - "total_requests": 18, + "total_requests": 2097, "errors": 0, "five_xx": 0, - "p50_us": 10487, - "p95_us": 13527, - "p99_us": 13527, - "max_us": 13527, + "p50_us": 24063, + "p95_us": 30799, + "p99_us": 37919, + "max_us": 154367, "stages": [ { "stage_idx": 1, - "target_rps": 1, - "total_requests": 3, + "target_rps": 5, + "total_requests": 300, "errors": 0, "five_xx": 0, - "p50_us": 13751, - "p95_us": 30815, - "p99_us": 30815, - "max_us": 30815 + "p50_us": 24495, + "p95_us": 32367, + "p99_us": 36639, + "max_us": 152447 }, { "stage_idx": 2, - "target_rps": 2, - "total_requests": 6, + "target_rps": 10, + "total_requests": 600, "errors": 0, "five_xx": 0, - "p50_us": 9463, - "p95_us": 11999, - "p99_us": 11999, - "max_us": 11999 + "p50_us": 23967, + "p95_us": 30735, + "p99_us": 43391, + "max_us": 147327 }, { "stage_idx": 3, - "target_rps": 3, - "total_requests": 9, + "target_rps": 20, + "total_requests": 1197, "errors": 0, "five_xx": 0, - "p50_us": 10487, - "p95_us": 13527, - "p99_us": 13527, - "max_us": 13527 + "p50_us": 24063, + "p95_us": 30799, + "p99_us": 37919, + "max_us": 154367 } ] } diff --git a/backend/reports/S4.json b/backend/reports/S4.json index 60a358c..1fa2a23 100644 --- a/backend/reports/S4.json +++ b/backend/reports/S4.json @@ -1,45 +1,45 @@ { "scenario": "S4", - "total_requests": 18, + "total_requests": 2098, "errors": 0, "five_xx": 0, - "p50_us": 6803, - "p95_us": 14167, - "p99_us": 14167, - "max_us": 14167, + "p50_us": 19471, + "p95_us": 23487, + "p99_us": 28335, + "max_us": 142079, "stages": [ { "stage_idx": 1, - "target_rps": 1, - "total_requests": 3, + "target_rps": 5, + "total_requests": 300, "errors": 0, "five_xx": 0, - "p50_us": 11647, - "p95_us": 15183, - "p99_us": 15183, - "max_us": 15183 + "p50_us": 19119, + "p95_us": 25119, + "p99_us": 32447, + "max_us": 45823 }, { "stage_idx": 2, - "target_rps": 2, - "total_requests": 6, + "target_rps": 10, + "total_requests": 600, "errors": 0, "five_xx": 0, - "p50_us": 6651, - "p95_us": 12479, - "p99_us": 12479, - "max_us": 12479 + "p50_us": 19231, + "p95_us": 23903, + "p99_us": 33311, + "max_us": 144511 }, { "stage_idx": 3, - "target_rps": 3, - "total_requests": 9, + "target_rps": 20, + "total_requests": 1198, "errors": 0, "five_xx": 0, - "p50_us": 6803, - "p95_us": 14167, - "p99_us": 14167, - "max_us": 14167 + "p50_us": 19471, + "p95_us": 23487, + "p99_us": 28335, + "max_us": 142079 } ] } diff --git a/backend/reports/baseline.csv b/backend/reports/baseline.csv index 2c5edda..3e91e1a 100644 --- a/backend/reports/baseline.csv +++ b/backend/reports/baseline.csv @@ -1,4 +1,4 @@ scenario,total,errors,five_xx,p50_ms,p95_ms,p99_ms,max_ms,stages -S1,18,0,0,86.14,95.74,95.74,95.74,3 -S2,18,0,0,10.48,13.52,13.52,13.52,3 -S4,18,0,0,6.80,14.16,14.16,14.16,3 +S1,1073,0,0,174.46,182.52,207.61,318.46,3 +S2,2097,0,0,24.06,30.79,37.91,154.36,3 +S4,2098,0,0,19.47,23.48,28.33,142.07,3 diff --git a/backend/reports/final-report.md b/backend/reports/final-report.md index 0237849..692c066 100644 --- a/backend/reports/final-report.md +++ b/backend/reports/final-report.md @@ -4,16 +4,17 @@ | 项 | 值 | |---|---| -| **生成时间** | 2026-06-15 21:06:41 CST | -| **压测开始** | 2026-06-15 21:05:10 CST | -| **压测结束** | 2026-06-15 21:05:38 CST | -| **总耗时** | 27s | -| **目标地址** | `http://localhost:8080` | +| **生成时间** | 2026-06-16 22:30:09 CST | +| **压测开始** | 2026-06-16 22:17:37 CST | +| **压测结束** | 2026-06-16 22:27:00 CST | +| **总耗时** | 9m23s | +| **目标地址** | `http://101.132.250.62:8080` | | **测试场景** | S1, S2, S4 | -| **阶梯模式** | step (`1,2,3`) | +| **阶梯模式** | step (`5,10,20`) | | **JWT 签名密钥** | `topfans-***` (前 8 位) | -| **监控模式** | off | -| **总请求数** | 54 | +| **prod SSH** | `root@101.132.250.62` | +| **监控模式** | full | +| **总请求数** | 5,268 | | **总错误数** | 0 (0.00%) | | **5xx 数** | 0 (0.00%) | @@ -27,9 +28,9 @@ **场景速览**: -- ✅ **S1 用户登录** — p99=96ms, err 0.00% -- ✅ **S2 浏览资产详情** — p99=14ms, err 0.00% -- ✅ **S4 资产铸造 (mint)** — p99=14ms, err 0.00% +- ✅ **S1 用户登录** — p99=208ms, err 0.00% +- ✅ **S2 浏览资产详情** — p99=38ms, err 0.00% +- ✅ **S4 资产铸造 (mint)** — p99=28ms, err 0.00% --- @@ -37,9 +38,9 @@ | 场景 | 描述 | Total | Err | 5xx | P50ms | P95ms | P99ms | Maxms | 拐点 RPS | 状态 | |------|------|-------|-----|-----|-------|-------|-------|-------|---------|------| -| **S1** | 用户登录 | 18 | 0 (0.00%) | 0 (0.00%) | 86 | 96 | 96 | 96 | — | ✅ | -| **S2** | 浏览资产详情 | 18 | 0 (0.00%) | 0 (0.00%) | 10 | 14 | 14 | 14 | — | ✅ | -| **S4** | 资产铸造 (mint) | 18 | 0 (0.00%) | 0 (0.00%) | 7 | 14 | 14 | 14 | — | ✅ | +| **S1** | 用户登录 | 1,073 | 0 (0.00%) | 0 (0.00%) | 174 | 183 | 208 | 318 | — | ✅ | +| **S2** | 浏览资产详情 | 2,097 | 0 (0.00%) | 0 (0.00%) | 24 | 31 | 38 | 154 | — | ✅ | +| **S4** | 资产铸造 (mint) | 2,098 | 0 (0.00%) | 0 (0.00%) | 19 | 23 | 28 | 142 | — | ✅ | > 说明: Err 包含 4xx + 5xx,5xx 是子集。错误率 = Err / Total。 @@ -49,9 +50,9 @@ **P99 / 阈值 比率** (从高到低): -- S1: 0.10x (96ms) -- S2: 0.03x (14ms) -- S4: 0.01x (14ms) +- S1: 0.21x (208ms) +- S2: 0.08x (38ms) +- S4: 0.01x (28ms) --- @@ -70,24 +71,24 @@ | 指标 | 实测 | 阈值 | 判定 | |------|------|------|------| -| P50ms | 86 | ≤100 | ✅ | -| P95ms | 96 | ≤300 | ✅ | -| P99ms | 96 | ≤1000 | ✅ | -| Maxms | 96 | — | ℹ️ 参考 | +| P50ms | 174 | ≤100 | 🚨 | +| P95ms | 183 | ≤300 | ✅ | +| P99ms | 208 | ≤1000 | ✅ | +| Maxms | 318 | — | ℹ️ 参考 | | 错误率 | 0.00% | ≤1.00% | ✅ | | 5xx 率 | 0.00% | ≤0.10% | ✅ | ### 📍 拐点分析 -✅ **拐点未触发** — 全程 3 个 stage 健康运行,最高 3 RPS p99=96ms。 +✅ **拐点未触发** — 全程 3 个 stage 健康运行,最高 20 RPS p99=208ms。 ### 🔢 阶梯结果 | Stage | TargetRPS | Total | Err | 5xx | P50ms | P95ms | P99ms | Maxms | 涨幅 | |-------|-----------|-------|-----|-----|-------|-------|-------|-------|------| -| 1 | 1 | 3 | 0 | 0 | 94 | 98 | 98 | 98 | | -| 2 | 2 | 6 | 0 | 0 | 87 | 89 | 89 | 89 | -9% | -| 3 | 3 | 9 | 0 | 0 | 86 | 96 | 96 | 96 | +7% | +| 1 | 5 | 300 | 0 | 0 | 142 | 151 | 175 | 242 | | +| 2 | 10 | 388 | 0 | 0 | 175 | 182 | 212 | 337 | +21% | +| 3 | 20 | 385 | 0 | 0 | 174 | 183 | 208 | 318 | -2% | ### 🎯 行动项 @@ -114,24 +115,24 @@ | 指标 | 实测 | 阈值 | 判定 | |------|------|------|------| -| P50ms | 10 | ≤50 | ✅ | -| P95ms | 14 | ≤150 | ✅ | -| P99ms | 14 | ≤500 | ✅ | -| Maxms | 14 | — | ℹ️ 参考 | +| P50ms | 24 | ≤50 | ✅ | +| P95ms | 31 | ≤150 | ✅ | +| P99ms | 38 | ≤500 | ✅ | +| Maxms | 154 | — | ℹ️ 参考 | | 错误率 | 0.00% | ≤1.00% | ✅ | | 5xx 率 | 0.00% | ≤0.10% | ✅ | ### 📍 拐点分析 -✅ **拐点未触发** — 全程 3 个 stage 健康运行,最高 3 RPS p99=14ms。 +✅ **拐点未触发** — 全程 3 个 stage 健康运行,最高 20 RPS p99=38ms。 ### 🔢 阶梯结果 | Stage | TargetRPS | Total | Err | 5xx | P50ms | P95ms | P99ms | Maxms | 涨幅 | |-------|-----------|-------|-----|-----|-------|-------|-------|-------|------| -| 1 | 1 | 3 | 0 | 0 | 14 | 31 | 31 | 31 | | -| 2 | 2 | 6 | 0 | 0 | 9 | 12 | 12 | 12 | -61% | -| 3 | 3 | 9 | 0 | 0 | 10 | 14 | 14 | 14 | +13% | +| 1 | 5 | 300 | 0 | 0 | 24 | 32 | 37 | 152 | | +| 2 | 10 | 600 | 0 | 0 | 24 | 31 | 43 | 147 | +18% | +| 3 | 20 | 1,197 | 0 | 0 | 24 | 31 | 38 | 154 | -13% | ### 🎯 行动项 @@ -158,24 +159,24 @@ | 指标 | 实测 | 阈值 | 判定 | |------|------|------|------| -| P50ms | 7 | ≤300 | ✅ | -| P95ms | 14 | ≤800 | ✅ | -| P99ms | 14 | ≤2000 | ✅ | -| Maxms | 14 | — | ℹ️ 参考 | +| P50ms | 19 | ≤300 | ✅ | +| P95ms | 23 | ≤800 | ✅ | +| P99ms | 28 | ≤2000 | ✅ | +| Maxms | 142 | — | ℹ️ 参考 | | 错误率 | 0.00% | ≤1.00% | ✅ | | 5xx 率 | 0.00% | ≤0.10% | ✅ | ### 📍 拐点分析 -✅ **拐点未触发** — 全程 3 个 stage 健康运行,最高 3 RPS p99=14ms。 +✅ **拐点未触发** — 全程 3 个 stage 健康运行,最高 20 RPS p99=28ms。 ### 🔢 阶梯结果 | Stage | TargetRPS | Total | Err | 5xx | P50ms | P95ms | P99ms | Maxms | 涨幅 | |-------|-----------|-------|-----|-----|-------|-------|-------|-------|------| -| 1 | 1 | 3 | 0 | 0 | 12 | 15 | 15 | 15 | | -| 2 | 2 | 6 | 0 | 0 | 7 | 12 | 12 | 12 | -18% | -| 3 | 3 | 9 | 0 | 0 | 7 | 14 | 14 | 14 | +14% | +| 1 | 5 | 300 | 0 | 0 | 19 | 25 | 32 | 46 | | +| 2 | 10 | 600 | 0 | 0 | 19 | 24 | 33 | 145 | +3% | +| 3 | 20 | 1,198 | 0 | 0 | 19 | 23 | 28 | 142 | -15% | ### 🎯 行动项 @@ -222,7 +223,8 @@ reports/ ```bash cd /opt/topfans/loadtest -./loadgen --cmd=run --scenarios=S1,S2,S4 --stage=step --step-schedule='1,2,3' \ - --target=http://localhost:8080 \ - --monitor=off \ +./loadgen --cmd=run --scenarios=S1,S2,S4 --stage=step --step-schedule='5,10,20' \ + --target=http://101.132.250.62:8080 \ + --monitor=full \ + --prod-ssh=root@101.132.250.62 ``` diff --git a/backend/reports/run-metadata.json b/backend/reports/run-metadata.json index 71cc1c3..5179e03 100644 --- a/backend/reports/run-metadata.json +++ b/backend/reports/run-metadata.json @@ -1,6 +1,6 @@ { - "start_time": "2026-06-16T22:10:55.266986+08:00", - "end_time": "2026-06-16T22:13:55.674244+08:00", + "start_time": "2026-06-16T22:17:37.426542+08:00", + "end_time": "2026-06-16T22:27:00.295966+08:00", "target": "http://101.132.250.62:8080", "scenarios": [ "S1", diff --git a/backend/reports/s1.png b/backend/reports/s1.png index 57fbb8de374816bb16338b5113476c578d3b81e4..21b2518246397cfc2745ae8de2faee7d0e2ce1d2 100644 GIT binary patch literal 17198 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 z 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 literal 23411 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 X|5~n1`_(Vk!BvE(tDnm{r-UW|2i!$G literal 20069 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 diff --git a/backend/scripts/loadgen/seed/cleanup.go b/backend/scripts/loadgen/seed/cleanup.go index b51ef4a..ae97a7e 100644 --- a/backend/scripts/loadgen/seed/cleanup.go +++ b/backend/scripts/loadgen/seed/cleanup.go @@ -23,15 +23,20 @@ func Cleanup(db *sql.DB, starID int64, full bool) error { } if full { queries = append(queries, - "DELETE FROM users WHERE id BETWEEN $1 AND $2", + // 用 id >= LoadtestUserMin 而非 BETWEEN,避免漏掉压测期间 + // 通过 nextval(users_id_seq) 插入的 id > LoadtestUserMax 的边界行 + // (如 S4 mint 场景触发 userservice 注册新用户)。 + // LoadtestUserMin = 30000001 远大于真实用户 id 范围(< 1000000), + // 不会误删真实用户。 + "DELETE FROM users WHERE id >= $1", "DELETE FROM stars WHERE star_id = $1", ) } for _, q := range queries { var err error switch q { - case "DELETE FROM users WHERE id BETWEEN $1 AND $2": - _, err = db.Exec(q, LoadtestUserMin, LoadtestUserMax) + case "DELETE FROM users WHERE id >= $1": + _, err = db.Exec(q, LoadtestUserMin) default: _, err = db.Exec(q, starID) }