V2

SLO TTFT p95 ≤ 2.0sSWEEP 1/4/8/16

第三次坐下

工作点。

并发拉满,单请求成本最低。也是 P95 最先破的地方。值班要的是仍能过线的最便宜点,不是报表上最便宜的点。

先划线,再谈省钱。

工作点是一组冻结后的数:模型版本、输入输出长度、并发、调度参数、质量门。改一个,就要重扫。扫的时候从低并发往上走。每一档记下 TTFT p95、ITL p95、失败率、每千次请求的钱。扫之前把 SLO 写成一句能值班的话,例如「成功请求的 TTFT p95 ≤ 2.0 秒,超时算失败」。没有这句,表上的 0.31 元会赢。

下面这张表是教学用的。卡、价、模型都是假的。SLO 先写成:成功请求的 TTFT p95 不超过 2.0 秒。失败和超时算进分母,不要先把慢的删掉再取 P95。

并发 1:p95 0.4 秒,每千次 2.40 元。很稳,很贵。卡在等。并发 4:0.8 秒,0.80 元。并发 8:1.4 秒,0.48 元,还在线内。并发 16:4.2 秒,0.31 元。最便宜。线破了。客服电话的成本不在这 0.17 元的差价里。

有人会说再加卡。加卡是另一条扫描。先承认 16 这一档不能上。上 8,留一点余量。余量不是浪费,是长请求进来时短请求还能喘气。KV 顶满的 16,看起来每张卡都很值,一条 8k 就能把队列推过 2 秒。工作点写进配置,就要写进告警:并发一越过 8,先限流,再谈加卡。限流是保护 P95,不是惩罚用户。

破线的代价可以估。假设一天 8 万次短请求,其中 5% 超过 4 秒,就是 4000 次有人盯着屏幕发呆。坐席若因此转人工,一次人工 90 秒,4000 次是 100 小时。0.17 元的差价在这里不够买回那 100 小时。工作点写进值班手册时,把这条账也写上:破线不是「略慢」,是把人从自动挡打回人工。

挑点的顺序固定。质量门没过的档,直接划掉。SLO 没过的档,划掉。剩下的里面再比钱。不要用「平均更便宜」把 16 救回来。平均值不接电话。扫表要留原始分位,不要先删慢请求再算 P95。删了,16 会看起来能上。工作点选定之后,写进配置和告警,周一改并发要当一次发布,不是随手拧旋钮。拧过又忘了写,夜里的 P95 会替你记。

想用扫表练手,可选玩具(合成,不能当现场成绩):operating-point-lab

动手

四档里挑一档上线。

SLO:TTFT p95 ≤ 2.0 秒。选仍过线的最便宜档。

并发TTFT p95$ / 1k req
10.4 s2.40
40.8 s0.80
81.4 s0.48
164.2 s0.31