GH GambleHub

容量规划

1)什么是容量规划,为什么需要

能力规划(能力规划)是评估并提供以最低成本实现目标SLO所需资源的系统过程。它不仅涉及CPU/内存,还涉及网络吞吐量,存储,DB/kesh,事件队列/总线,外部提供商(付款/KUS/antifrod)以及人力资源(电话,支持)。

目标是:
  • 执行SLO/SLA甚至在高峰和降解。
  • 尽量减少TCO和简单资本(过度投资)。
  • 减少资源耗尽的事件风险(saturation → p99/错误)。
  • 确保发布和活动(市场营销,锦标赛,顶级比赛)的可预测性。

2)输入和真相来源

可观察性:RPS/concarrentity,p50/p95/p99,error-rate,aturation(CPU,mem,disk IOPS,network pps/mbps),队列长度,rate限制。
商业活动:活动日历,季节性(晚上/周末/大型活动),地区/辖区。
Tehdolg/Fichi:路线图发布、体系结构更改(例如加密、新拼写)。
提供商:配额和通过支付/KUS/邮件/反欺诈服务。
过去的事件:瓶颈在哪里(DB,kesh,L7平衡器,总线,CDN,磁盘)。

3)基本概念和公式

Headroom-容量库存:'headroom=(max_RPS −实际_RPS )/max_RPS"。
峰值为20-40%(对于关键流)的目标值。
Aturation-占用资源与可用资源的关系(CPU% 、内存/GC、连接、文件描述器、IOPS、队列深度)。
Throughput是稳定的-p99和error-rate执行长时间SLO(非一次性激增)的速度。
Capacity Unit(CU)是该服务的配给功率单位(例如X RPS每个pod vCPU=1,RAM=2 GiB)。
系统限制为max,无降解:"N_pods × CU"。重要的是要考虑共享的依赖性(DB/kesh/总线)。

4)需求模型: 预测

统计排名:每周/每日季节性,假期,体育决赛,区域高峰。
队列:按国家/地区、支付提供商、设备、VIP细分市场。
事件三角洲:运动/枪支/发行版/SEO的影响。
"如果"(场景规划):晚上7点至晚上10点的流量增加50%;提供商A的下降→重新分配到B(对潜伏期增加30%)。
实时调整:不按主要指标(重振会议,排队比赛,篮子)进行调整。

5)句子模型: 链条"断裂"的地方

请求管道:Edge/CDN → L7平衡器→应用程序→ kesh → DB →外部API →队列/总线→ 处理程序/ETL。

对于每个链接,我们固定:
  • 容量(CU/实例)、可扩展性(Horizo​​n/Vertic)。,极限(连接,pps,IOPS),滞后。
  • 拒绝政策(利率限制,电路突破,退化)。
  • SLO是本地的,它们对e2e-SLO的贡献。

6)错误库存和预算

我们将头部与错误预算联系起来:预算减少→库存增加。
对于关键流(付款/验证)-上面的头部,对于次要流-下面的头部。
寒冷/温暖储备:在高峰/事故中激活。

7)缩放: 战术

HPA(按负载度量):RPS,latency,队列长度,定制SLI(优于CPU%)。
VPA:调整podam资源(与stateful和p99 GC)。
KEDA/适配器:按外部源(Kafka lag, Redis list length, CloudQueue depth)进行缩放。
Warm pools/加热:提前举起实例以避免寒冷的开始。
"加载代码"方法:对自动轨道/限制/定时器/转发策略进行验证并进行审查。

8)队列,后压和尾部控制

目的是防止p99的雪崩状生长。
限制并发性和队列大小,引入时间窗口和幂等性。
Hedging/Retry-budget:限制用户和系统的总体时间预算。
Graceful degradation:在超载时关闭次要幻灯片。

9) DB、Keshi和Storage

DB:连接限制,日志/FSync,索引,查询计划,replica lag,热键/表,事务的max TPS。
Keshi:按细分得分,释放/残障时的"错过风暴",按键分配。
Storaj: IOPS/throughput,延迟,压缩,TTL,清理旧批次/快艇。
迁移模式:expand→migrate→contract没有停止锁定。

10)事件流和ETL

Kafka/总线:批量吞吐量,lag,ISR,compaction,生产商/消费者限制。
ETL/batchi:启动窗口、运行时间预算、对原木的影响(throttle I/O)。
对于临界浮动(付款/资产负债表),相同性和异常性。

11)网络和外围

L4/L7平衡器:连接极限,syn backlog, TLS offload, session reuse。
CDN/Edge:带宽、缓存策略以减少起源负载。
网内限制:VPC/子网中的 pps/mbps,egress成本(FinOps)。

12)多区域,DR和辖区

策略:主动(GSLB/Anycast),主动(热/热/冷DR)。
N+1按地区分列:在保持SLO核心流的同时忍受AZ/地区的损失。
法律本地化:按国家/地区划分流量/数据,不同的限制以及每个提供商的SLO。
DR测试:具有实际负载转移的常规游戏日。

13)外部提供商: 配额和路线

付款/KYC/antifrod/邮件/SMS:TPS配额,爆发,日限。
多供应商:潜能/成功路由,SLO按供应商,自动收件人。
SLA合同:合规e2e-SLO,升级渠道,状态网络手册。

14) FinOps: 成本和效率

TCO:compute+storage+network egress+许可证/提供商+值班。
单位经济学:1k 请求/1存款交易/1 KYC的成本。
优化:右对齐,现货/前缀折扣,高速缓存命中,登录/跟踪,冷存储级别。
时移负荷:在"夜间"窗口和廉价区域不关键的战斗。

15)Dashbords和报告(最低招聘)

Capacity Overview:

当前负载vs持续的链路通过。
按服务和地区分列的Headroom;预计24/72小时。
KPI FinOps:$/1K查询,$/存款。

Risk & Hotspots:

顶部瓶颈(p99, saturation, lag), DR.

Providers:

提供商的成功/潜伏期和限制;路线上的流量份额。

Backlog:

升级计划/指数/优化计划,预期节省/容量增长。

16)流程和角色

RACI:平台(infra/cluster/balancer),DB/Data(索引,复制),服务命令(分析/缓存),SRE(SLO,Alerta),Sec/Compliance(加密/日志),财务(预算)。
节奏:每周能力审查(路线图,预测,风险),每月FinOps摘要,每季度DR测试。
更改管理:大型活动/发布通过机会门(下表)。

17)发行和活动支票清单(capacity-gate)

  • 高峰负荷预测和"+x%紧急尾巴"。
  • 用于核心流(付款/CUS/登录)的可用头顶。
  • 向提供者确认配额;备用路由处于活动状态。
  • HPA/KEDA阈值和warm-pool设置。
  • 队列/限制和降级得到验证(花花公子准备就绪)。
  • 金丝雀股份和自动回滚包括在内。
  • Dashbords/Alerta (burn-rate, saturation, p99)已验证。
  • DR计划和升级联系是相关的。

18)反模式

"CPU <70%-一切都很好":忽略依赖性限制(DB连接,IOPS,队列)。
没有按链接度量的集中式"黑匣子"-无法理解限制的位置。
缺少缓存策略-释放失败会杀死起源。
没有预算的撤退限制的硬码是一场查询风暴。
"一个支付提供商"是高峰期的故障点。
忽视温暖的储备是事件的起因。
没有定期的DR测试-该计划在需要时不起作用。

19)迷你计算(示例)

服务X:每波德350 RPS的可持续性(vCPU=1, RAM=2 GiB)。目标是5,000 RPS,头部25%。

所需功率='5000/0。75 = 6667 RPS`.

Podov='ceil(6667/350)=20'。另外,warm-pool 15% → 3 pod。

DB: 12k TPS限制,当前信用9k TPS,高峰预测10。5k TPS →库存1.5k (14%).需要:索引/sharding/副本或缓存以降至 8。5k.

提供商A (KYC):配额120 rps,峰值95 rps,活动+40% → 133 rps>配额→路由70% A/30% B。

20)实现能力规划模板

1.描述e2e路径和瓶颈。
2.引入CU并测量每个层的稳定通量。
3.在所有链接上配置静止度和p99度量。
4.形成事件/活动/发布日历。
5.构建队列和"如果"脚本的预测。
6.固定对流和对流区域(绑定到错误预算)。
7.设置HPA/VPA/KEDA+warm-pools、限制/转发/队列。
8.检查提供商配额,启用多条路由。
9.收集减速板和每周的节奏能力评论。
10.每季度-DR演习和模型修订。

21)结果

容量规划是一组可管理的预测,架构限制和成本,而不是"增加CPU"。当每个e2e路径层都具有测得的容量,并且头部和降解策略与SLO和错误预算相关联时,峰值负载,活动和事故不再令人惊讶。这种方法可以降低事故风险,稳定业务指标并优化成本。

Contact

联系我们

如需任何咨询或支持,请随时联系我们。我们随时准备提供帮助!

Telegram
@Gamble_GC
开始集成

Email — 必填。Telegram 或 WhatsApp — 可选

您的姓名 可选
Email 可选
主题 可选
消息内容 可选
Telegram 可选
@
如果填写 Telegram,我们也会在 Telegram 回复您。
WhatsApp 可选
格式:+国家代码 + 号码(例如:+86XXXXXXXXX)。

点击按钮即表示您同意数据处理。