一、$17 亿账单,月费本来不到 $5
2026 年 7 月 17 日,一位名叫 nprateem 的 AWS 用户在 Hacker News 上发帖:他的 AWS 月度预估账单显示为 $1,700,000,000——17 亿美元。而他正常的月费,不到 5 美元。
他以为自己看错了,揉了揉眼睛。没有看错。
这位用户立刻创建了紧急工单,并在帖子里问:「有别人也遇到这种情况吗?」
答案是:有,非常多。

Reddit 和 X(原 Twitter)上迅速涌现出大量截图。一位上个月只花了 $0.19 的用户,收到了接近 25 亿美元的预估账单。另一位用户在 X 上写道:「我刚在 AWS 账单上看到了 1.5 万亿美元,我的灵魂离开了我的身体。」这条帖子获得了 130 万次浏览和近 1.9 万点赞。
还有的用户在慌乱中直接把整个账户的资源全删了——「不用说,我慌了,摧毁了这个账户上的一切。」
不过,这些数字并不是真实扣款。AWS 很快确认,出问题的是「预估账单」,不是实际收费。但即便如此,看到那个数字的瞬间,没有人能保持冷静。
二、到底发生了什么?
AWS 官方在事发后 90 分钟内给出了根因描述:「预估账单计算子系统中的单位定价问题。」听起来很绕,翻译成普通话就是——一个单位写错了。
真正把这件事讲清楚的,是一位叫 donavanm 的前 AWS 工程师。他在 Hacker News 的评论区里写了这么一段话(笔者翻译):
「我在 AWS 的时候处理过一模一样的错误。这是单位错误。我们本来打算收 $0.05/GB,但漏掉了单位(GB),然后计费系统默认按 byte 来算。$0.05 每 byte 的数据传输,意味着有些客户在几个小时内就看到了百万级别的账单。凌晨两点被客服团队紧急呼叫,三点到四点修好并发布了修正,随后发了道歉邮件。」
这段话透露了几个关键信息:
第一,这不是第一次发生。同样类型的错误以前就出现过——笔者说的「以前」,甚至可能不止一次。
第二,错误的放大倍数是惊人的。1 GB = 1,073,741,824 bytes。如果你忘了写「GB」,系统就默认按 byte 计价,账单瞬间膨胀 10 亿倍。$0.05 的使用费,变成 $53,687,091.20。
第三,这个错误不会在发布前被自动检测到。它一路穿过了开发、测试、部署的各个环节,直到用户看到账单截图、开始恐慌、发帖求助,才被发现。
三、为什么「漏写一个单位」就能轻松穿过所有防线?
这才是这件事最让人不安的地方。
donavanm 进一步解释了 AWS 计费系统的运作方式。服务的计量数据(用了多少资源)和定价信息(每单位多少钱)是分开存储的。每个 SKU(可以理解为每一条收费项目)都定义在一个「定价计划」里,包含单位类型、适用区域、单价等信息。计量记录和定价计划通过账号 ID、区域、SKU 编号等字段进行匹配。
如果定价计划里的单位类型填错了——本该是 GB,却留空或写成了 byte——那么计量数据和定价的转换就会出错。而这个错误,没有任何自动化检查能拦住它。
Hacker News 上另一位用户的评论一针见血:
「没有测试吗?就是把某个不起眼的细节搞错了——然后,数十万管理员收到了让他们心脏病发作的账单?」
另一位用户回答了这个问题:
「测试当然有。测试 1 验证了服务发出计量数据的方式是正确的(『我们做了 100 bytes 的操作,确认计费系统收到了 100 bytes 的数据,通过』)。测试 2 确认计费系统的计算逻辑(『给 SKU#12345 输入 100 个 GB 单位,计算出 $17,通过』)。但没有人把这两套测试连在一起跑——因为这涉及不同的团队、不同的管理层级,做起来更难。」
笔者觉得这个解释很有洞察力。它揭示了一个常见的工程管理问题:每个环节单独工作都是对的,但拼在一起就出错了。 有 HN 用户还提了一个补充观点:「有人在某个会议上说过『我们应该让测试真的走一遍收费流程』,然后有人说『让测试真的产生收费账单可能是法律/财务问题,甚至可能是犯罪』——然后就没有人追问第二好的替代方案是什么了。」
四、真正的「反派」:云计费的复杂度
这个事件如果只理解成「某个工程师粗心写错了一个配置」,那就完全错过了重点。
真正的反派是 云计费系统本身的复杂度。
AWS 有大约 30 万个不同的 SKU(计价单位)。不是 300 个,是 30 万个。每一个 SKU 都有自己独立的定价逻辑——按时间、按流量、按请求次数、按存储容量、按区域。它们之间还会互相叠加:一个简单的网页请求可能触发计算费、网络传输费、存储读取费、日志记录费、监控数据费……每一项都有自己的计价单位和规则。
使用量数据的产生和定价数据的配置,是两套完全独立的系统。它们之间的匹配靠的是字段关联,而不是硬编码的校验。这个设计本身没有什么错——它给了 AWS 极大的灵活性,可以在不修改计量系统的情况下调整定价。但代价是:没有人能完全理解「我这个操作最终会花多少钱」。
实际上,AWS 账单复杂到出现了一个专门帮人解读 AWS 账单的职业——云成本优化顾问。在一个每年营收超过 1000 亿美元的业务上,需要专门的「翻译」来告诉客户他们到底花了多少钱,这件事本身就说明了一些问题。

甚至 AWS 自己的工程师,在 HN 讨论中也坦承了一些令人不安的事实。一位自称前 AWS 员工写道:「整个公司就像一个鲁布·戈德堡机器(一种故意设计得过度复杂的机械装置),很少有人关心自己负责的那一小块之外发生了什么——因为他们没有动力去关心。」
另一位前员工补充:「我被放进绩效改进计划(Focus),因为我的『贡献没有被领导层看到』。在这种环境下,看到一个同事代码里的隐患,我没有任何动力去主动指出并修复——如果我去修了,年底绩效排名还是要有一定比例的人被划到『低效』档,那为什么那个人不能是留下 bug 的同事?」
当然,也有不同的声音。另一位前 AWS 经理级员工反驳:「任何这种程度的客户影响都会触发 COE(错误纠正)报告,意味着要写一堆强制性的改进行动项,至少要消耗一个人一个月的工作量。COE 对整个团队来说是巨大的麻烦,这本身就形成了预防问题发生的强烈动机。」
笔者不站队。这两种说法可能同时为真——不同部门、不同管理层级下的文化差异巨大。但这恰恰说明:在一个拥有数万名工程师的组织里,哪怕所有人都想做好,系统性的漏洞仍然可以一路滑过去。
五、AWS 是怎么应对的?
从 AWS 健康仪表盘(Health Dashboard)的公开时间线来看:
- 7 月 17 日凌晨 3:52 PDT:AWS 确认根因是「预估账单计算子系统中的单位定价问题」,暂停了账单预估计算。
- 凌晨 4:58:同时尝试两条修复路径——回滚最近的变更,或者恢复到最后的准确数据。
- 早上 5:54:内部监控显示计费子系统已经能产生正确的预估,正在做进一步验证。
- 早上 7:53:坏消息——回滚没有解决问题,两条修复路径都还在推进。预估账单更新继续暂停。
- 早上 9:59:根因已定位并修复,开始为所有客户重新计算账单数据。预计部分客户在 3 小时内看到恢复,全部客户在 7 月 18 日中午前恢复。
- 中午 12:56:进展比预期慢。预计全面恢复推迟到 7 月 19 日凌晨。声明强调:「显示的账单预估不反映实际使用和收费。客户无需采取任何行动。」
修复一个「漏写了单位」的 bug,花了 AWS 超过 24 小时——而且第一次修复尝试还失败了。这也反过来说明:即使是 AWS 自己的工程师,修复自己系统的 bug 也不是一件简单的事。
六、这意味着什么?
这个事件最终没有造成任何实际的经济损失——没有人被多扣钱。但它暴露出的问题,比「某个工程师粗心了」要深得多。
第一,云计费已经成为一个「没人能完全理解」的系统。 AWS 只是其中最极端的例子,但谷歌云、微软 Azure 面临同样的问题。当一个系统的复杂度超出了任何单个人的理解能力,它就不再是一个可控的工具,而是一个只能「观察它、推测它、祈祷它别出错」的黑箱。
第二,AI 时代正在把这个问题的赌注抬高。 就在上周,AWS 刚宣布投入 10 亿美元用于面向客户的 AI 工程师团队。单个 AI 训练任务的月账单已经可以达到数亿美元。当真实账单的规模变得如此巨大,计费错误哪怕只是「预估显示」,造成的社会恐慌和信任损失也远比过去严重。
第三,这个 bug 不是第一次发生,也不会是最后一次。 前 AWS 工程师 donavanm 自己就经历过一模一样的错误,在凌晨两点被叫起来紧急修复。这说明这个漏洞在 AWS 的系统里至少存在了好几年,至少发生过两次,而且两次都造成了大规模的用户恐慌。但一直没有被系统性地堵上。
写到这里,笔者想起 donavanm 描述 AWS 计费架构的那句话:「服务的计量数据并不直接关联到价格。」这句话用大白话说就是——你的使用量和你的账单之间,隔着至少两层需要人工配置的映射关系。任何一层写错,结果就是:$5 变成 $17 亿。
参考链接
- HN 讨论帖:Hacker News 上关于 AWS 预估账单数据不准确的讨论,原帖发布者 nprateem 晒出 $17 亿账单截图,引发 992 分、618 条评论的热烈讨论(item?id=48945241)
- 前 AWS 工程师 donavanm 的根因分析评论:详细解释了定价单位配置错误(byte vs GB)如何导致账单膨胀 10 亿倍,以及 AWS 计费系统计量数据与定价分离的架构设计
- AWS Health Dashboard 公告:AWS 官方状态页面关于「Billing Console - 预估账单数据不准确」的完整事件时间线,从确认根因到修复完成的全部更新记录
- The Next Web 报道:综合报道了该事件的影响范围,包括 Reddit 用户反应($0.19 月费变 $25 亿)和 AWS 的修复时间表
- Cyber Kendra 报道:引用了 X 平台上用户 @Bharath_uwu 晒出 $1.5 万亿账单的截图,以及 AWS Support 官方回应
- TechRadar 报道:标题「我的灵魂离开了我的身体」,引述了多位用户的恐慌反应,包括有人直接删除全部云资源的极端案例