OpenAI 官方博文爆了个自己的料:为了扛住十亿 ChatGPT 用户的请求,他们内部那个叫 Habitat 的存储平台,一开始居然是个简单的 Python 客户端库。
- 发生了什么:Habitat 从 Python 客户端库升级为独立服务,每秒处理 7000 万次请求,支撑超 500 PB 数据。
- 真相是什么:客户端库升级需要协调几十个服务,一次无关的团队回滚直接导致他们拼命想避免的宕机。
- 影响是什么:OpenAI 押注自家 Codex 和 GPT 模型,计划未来用 AI 重写 Python 服务来还技术债。
2023 年 DevDay 推出 GPTs 时,Habitat 只是个 Python 库,底层连着 Azure Cosmos DB。那时候产品工程师爽了,完全不用管 schema 查找、路由、授权、加密、序列化这些脏活。库自动处理数据去向和请求整形,你甚至不需要考虑数据来自 Azure Cosmos DB、缓存还是其他存储。现在这个平台每秒处理超过 7000 万次请求,覆盖近 40 个地理区域。
但用户涨得太疯,过去三年每年增长超过 10 倍。到了 2025 年中,这个客户端库到了极限,想改个向后兼容的协议根本行不通。原文作者讲了个惨痛教训:为了减少单区域宕机影响,他们想把关键数据迁移到区域分布的 Azure Cosmos DB 账户。这需要在客户端加路由逻辑。结果协调几十个服务花了几天,加 shadowing 又花几天。最后准备开 feature flag 时,某个团队因为无关原因回滚了服务,直接引发了原本想避免的宕机。
客户端库的变更需要跨几十个服务进行复杂协调,这个过程变得越来越脆弱、低效且容易出现操作故障。
既然 Python 库不行,换语言重写呗?OpenAI 偏偏没有。他们把 Python 库抽成了独立的 Python 服务。讲真,用 Python 做高吞吐服务会增加网络延迟和 CPU 内存成本。但他们的首要目标是解锁产品开发者,实现平台稳定。接受 Python 的性能妥协,是为了争取时间做基础投资。
更骚的操作在后面:他们做了一个计算过的赌注。他们认为,随着自家编码模型的快速进步,等到必须完全迁移离开 Python 时,Codex 和 GPT 会让这种迁移变得可行。也就是说,大厂也在借 AI 的东风来还自己欠下的技术债。现在先用 Python 跑通业务,等 AI 写代码能力够了,直接让 AI 来重构。这算盘打得,我们在工位上都听到了。
这事对咱们普通打工人有什么启发?别迷信大厂的完美架构。你在公司里搞的那些“优雅”的底层设计,如果业务跑得比架构快,最后都会变成屎山。如果你在公司负责类似的数据中间件或基础组件,记住两条落地原则:
第一,千万别把核心逻辑写在客户端 SDK 里。一旦要改协议,全公司几十个业务线陪你加班回滚,背锅的肯定是你。第二,如果性能遇到瓶颈但业务不能停,先抽成独立服务,别急着换语言重构。用空间换时间,把核心 API 稳住,再去想重构的事。
另外,Python 做高并发最大的坑是尾部延迟。用户一次请求几百次数据库调用,最慢的那次决定了体验。遇到这种卡顿,先查最慢的调用,别盲目优化平均耗时。这种“战略性技术债”在 AI 时代很常见,以前借债靠堆人,现在借债靠模型。
看完想聊两句?
你经历过改底层 SDK 导致全业务线回滚的惨剧吗?
往期推荐
- ·Sam Altman 叫停今年 IPO,直言 AI 安全没搞定
- ·原帖作者辞职警告AI末日,AirBnb CEO劝打工人冲浪
- ·
点击公众号头像 → 历史消息,可翻阅以上文章