快速术语表
VU(虚拟用户)
由k6/JMeter/Gatling并行模拟的虚拟用户。负载指标#1。
上升阶段
从0到目标负载的渐进攀升。给自动扩展器反应的时间。
平台期
负载保持在目标。您在这里测量稳定性和SLO。
P95(延迟)
95%的请求响应速度快于此。优于用户体验的平均水平。
P99(延迟)
捕捉最慢的请求(冷启动、GC暂停、锁)。揭示异常。
RPM / RPS
每分钟(或每秒)请求数。系统吸收的有效吞吐量。
吞吐量
一段时间内处理的请求量。测量在平台期,而非峰值。
SLO
服务水平目标。需要遵守的数字目标(例如:P95 ≤ 500ms,错误 ≤ 1%)。
项目上下文
上下文越精准,建议越锋利
所有内容通过一个可部署的单元流动。典型瓶颈:共享数据库、锁、事务过宽。
压测参数
设定目标负载与持续时间
用户场景
百分比合计需为 100%(当前:100%)
总动作量估计
~52 500
在 20 分钟内(ramp-up + plateau)
目标负载
500
吞吐
3 000/min
总时长
20 分钟
百分比一致性
100%
合计 100%
按场景拆分
在 Timint App 中升级到专业版
分析 P95/P99、错误率、得分;获取专家修复建议;生成精美 PDF 审计报告。
✅ 自动计算性能得分
✅ 性能与云架构专家建议
✅ 带图表的 PDF 报告 + 个人主页保存
详细计划
每个阶段的总负载和场景负载,然后在平台期
| 阶段 | 时间 | 总虚拟用户 | 每分钟请求总数 | search-cart (75%) | checkout (20%) | signup (5%) |
|---|---|---|---|---|---|---|
| 加速步骤 1/4 (25%) | T+1.3 分钟 | 125 | 750 | 94 ·563 | 25 ·150 | 6 ·38 |
| 加速步骤 2/4 (50%) | T+2.5 分钟 | 250 | 1 500 | 188 ·1 125 | 50 ·300 | 13 ·75 |
| 加速步骤 3/4 (75%) | T+3.8 分钟 | 375 | 2 250 | 281 ·1 688 | 75 ·450 | 19 ·113 |
| 加速步骤 4/4 (100%) | T+5.0 分钟 | 500 | 3 000 | 375 ·2 250 | 100 ·600 | 25 ·150 |
| 持续平台期 | T+5→20 分钟 | 500 | 3 000 | 375 ·2 250 | 100 ·600 | 25 ·150 |
| 预计数量:~7 500 个操作在加速期间 + ~45 000 个操作在平台期 = ~52 500 个请求总数。 | ||||||
每个关键服务的风险
4 service(s) checked - each exposed service has its own risk profile
风险认证
认证饱和 = 会话阻塞和刷新令牌循环。注意:用户表数据库池、JWT缓存、/login限流。
风险搜索
搜索延迟 → 购物车瞬间放弃。瓶颈:Elasticsearch / Algolia索引、分面查询、全文扫描。
风险结算
结账失败 = 直接收入损失。测量完整漏斗(购物车 → 发货 → 付款 → 确认)。
风险支付
支付服务提供商错误 = 丢失支付或重复收费。幂等性密钥是强制性的,支付服务提供商A → B故障转移在<60秒内。
专家建议 - 单体
针对您的架构的 DevOps、SRE 和解决方案架构师提示
🛠️ DevOps 与云规模
- •在测试前分析 10 个最昂贵的端点 (APM: Datadog, NewRelic, Sentry Performance)
- •启用数据库慢查询日志,并在测试期间归档以进行事后分析
- •Provision +30% CPU/RAM during the test if stateful - otherwise scale horizontally with round-robin LB
- •在测试窗口期间冻结部署并禁用定时任务
⚙️ SRE / 平台
- •在测试前定义 4 个黄金信号:延迟、流量、错误、饱和度
- •根据 SLO(P95,错误率)发出警报,而不是原始 CPU 阈值
- •准备只读降级数据库模式,以防意外饱和
- •在 5 分钟内测试上一个部署的回滚
🏛️ 解决方案架构师
- •识别有界上下文 (DDD),以准备潜在的模块化单体拆分
- •逐步将重型作业 (PDF、电子邮件、导出) 移至队列 + 工作者
- •在横向扩展之前将会话外部化到 Redis(无状态优先)
- •测量每个功能的运营成本,以确定下一个拆分目标
量身定制的专家建议 - 电商
针对您项目类型的业务约束的具体建议
可复制的k6代码
根据您的参数 + 场景 + SLO阈值自动生成脚本
import http from 'k6/http';
import { sleep, group } from 'k6';
export const options = {
stages: [
{ duration: '1.3m', target: 125 },
{ duration: '1.3m', target: 250 },
{ duration: '1.3m', target: 375 },
{ duration: '1.3m', target: 500 },
{ duration: '15m', target: 500 },
],
thresholds: {
http_req_duration: ['p(95)<500', 'p(99)<1500'],
http_req_failed: ['rate<0.01'],
},
};
export default function () {
group('search-cart', () => {
// 75% du trafic - 375 VU cible · 2250 req/min
// TODO: 为search-cart场景实现请求
});
group('checkout', () => {
// 20% du trafic - 100 VU cible · 600 req/min
// TODO: 为checkout场景实现请求
});
group('signup', () => {
// 5% du trafic - 25 VU cible · 150 req/min
// TODO: 为signup场景实现请求
});
sleep(10.0);
}发射前检查清单
发射前勾选以避免误报
分享此模拟
生成一个公共链接发送给您的团队、客户或董事会
该链接将是公开的。仅输入的值将被发布。没有超出可选名称的个人数据。
一次规划周密的 load test 比一次生产故障便宜 10 倍。在这里规划,用你的工具(k6、JMeter、Locust)执行,再到 Timint App 里分析并生成可分享的审计报告。
Timint 智能提示
AI勾选了支付服务:务必使用 PSP 沙箱,并准备 3DS retries / idempotency keys。
电商 + 搜索:把热门 facets 建索引,热门查询加短缓存。
下载 Timint App 来分析结果并生成 PDF 审计报告。
Timint App: 强大精确的模拟工具,助您做出最佳财务决策。计算、打印、保存,完全免费。
FAQ
更进一步
Timint 应用内 40+ 模拟器
在 Timint 应用中找到您的所有工具、实时收入计数器以及更多功能。支持 iOS 和 Android。