预算失控的四个入口:给团队 API 花费装上限
如果只看单价,大部分团队的花费其实是合理的;真正把账单推高的,是几个没人负责的入口。按发生频率排,依次是这四个。
入口一:一个 Key 发给所有人
共享 Key 的问题是它把「谁花的钱」这件事抹掉了。账单上只有总量,没有归属,于是没人愿意认领,也没人愿意优化。可执行的做法是先按用途拆 Key:生产、预发、实验各一个,实验 Key 单独设额度。
入口二:把重试写成 while(true)
网络抖动时的自动重试是必要设计,但没有上限的重试是最贵的写法。建议固定三件事:最大重试次数、指数退避、失败后进入死信队列而不是原地重来。
入口三:没人认领的实验
临时脚本跑完就没人管,是账单上最难解释的一段。给实验设一个明确的生命周期:创建时写用途与预期调用量,两周后自动复核,无人续期即停。
入口四:峰值没有告警
花费在凌晨三点涨起来,你早上九点才知道,这不是监控缺失,是阈值缺失。至少两条线:日花费相对七天均值的偏离、单 Key 的突发速率。
当天能落地的四个动作
- 拆 Key:生产 / 预发 / 实验各一,实验 Key 设日额度。
- 重试上限写进公共客户端,而不是散落在各个业务里。
- 实验登记表,两周复核一次。
- 两条告警线,接收人写具体的人名,不写群。
这四个动作与用哪家网关无关,但选一个支持失败不结算、线路可切换的网关,会让第四条告警线安静很多。团队规模上来以后,治理思路可以接着看 成本运营的月度复盘,或者直接对照 比价表 把高单价的模型换成同能力档位的替代品。