我算是 AWS 刚诞生时最早的一批倡导者之一——SQS、S3、EC2、SimpleDB——那时候 AWS 的规模还小得多。事实上,当年 AWS 的美国 evangelist 第一次来到墨尔本宣传 AWS 时,我还组织了墨尔本第一场 AWS 活动。
云计算当时简直是一场令人震撼的革命——一家创业公司突然之间就能在几分钟内拥有自己的计算系统,而不需要再去数据中心安装和维护自己的机器。这完全改变了游戏规则,而我当时彻底喝下了 AWS 的 Kool Aid,连杯底都舔得干干净净。我对 AWS 是彻底 All In 的。
之后大概整整 15 年,我一直都是 AWS 的超级粉丝——真正意义上的信徒——我彻底押注 AWS。
关系的崩坏,总是一点一点开始的——有那么一两件事情开始让你不爽,但整体上你还是爱它,对吧?虽然这里那里会有一些小缺点,但没关系!它依然超级棒,你依然热爱它,对吧?但渐渐地,你开始注意到越来越多不对劲的地方,越来越多你不喜欢、已经坏掉、或者设计糟糕的东西。直到某一天,最后一个细节出现,天平终于彻底倾斜,你会突然意识到:
“我已经不再喜欢这段关系了。”
下面这些事情,就是一点一点侵蚀我对 AWS 感情的原因:
AWS 在存在的前六年里,居然不愿意自己构建官方客户端库,而是把这件事甩给“我们伟大的社区”,让 Python 等语言的开发者在周末和夜晚免费帮 AWS 写 SDK,为 AWS 的利益白打工。这件事真的让我非常恼火。
AWS 在从 Python2 迁移到 Python3 这件事情上拖延了荒谬般长的时间,这也让我极度不爽。
DynamoDB —— 我其实很少真正“恨”某个软件,但天啊,DynamoDB 真的是一坨滚烫的垃圾。我试了一天,结果当天账单就到了 75 美元。问题不仅仅是贵,它几乎在每一个层面上都烂到极致。
每 GB 20 美分的流量出口费用——天啊——你知道这到底有多贵吗?后来虽然降到了“只有”9 美分每 GB,但依然贵得离谱。如果你在用 AWS,而“9 美分每 GB 出口流量”这件事没有时时刻刻挂在你脑子里,那你照照镜子吧——那个冤大头就是你。
极度阴险复杂的计费系统——他们会对内部系统之间的数据传输收费,有时候甚至双重收费、三重收费。各种计费陷阱和地雷遍地都是。你必须是一个深度专家,才能避免踩坑。
IAM —— 那个极其复杂的认证与权限规则系统——这玩意绝对是 Lucifer 坐在地狱第九层燃烧王座上亲手设计出来折磨 AWS 用户的酷刑。
一旦我开始注意到 IAM 的复杂性,我就再也无法忽视 AWS 里无处不在的复杂性。最荒谬的是,AWS 的忠实信徒会告诉你:
“你必须使用 AWS,因为自己运行 Linux、硬件、网络、安全系统太复杂了。”
这些人已经彻底看不见 AWS 自己有多么夸张地复杂。AWS 本身复杂得离谱,而你还得雇一整支昂贵的专家团队来运营这一切。
AWS Lambda —— 是的,我当年真的买了他们那套宣传:
“它可以无限扩展!!!!”
于是我无视了它缓慢的冷启动时间、巨大的开发复杂度。实际上,相比自己运行 Web Server,AWS Lambda 根本没有真正的优势,但缺点却一大堆。
后来当我决定离开 AWS 时,最难拆除的部分恰恰就是 Lambda。Vendor Lock-in(供应商锁定)是真实存在的。
如果你正在使用 AWS Lambda,那么你必须不断地说服自己:
“这比自己运行服务器更好。”
不断说服自己:
“使用 AWS Lambda 不是一个灾难性的错误。”
AWS 对开源项目的做法也令人反感——尽管 Elasticsearch、Redis、MongoDB 等项目已经明确表示不希望被复制然后商业化,AWS 依然强行推出了 OpenSearch、Valkey、DocumentDB,把那些社区和公司辛辛苦苦建立起来的市场直接截胡,自己拿走托管服务的钱。
结果就是,大量“防御性许可证”开始出现,比如 SSPL、Elastic License、RSAL,以及其他 Source Available 模式。这些许可证真正想防的,其实并不是普通用户,而是 AWS——防止 AWS 把开源基础设施拆成零件、接管客户关系、把价值全吸走。
AWS 是一个掠食者。
还有更多、更多我讨厌 AWS 的原因,但我甚至不想继续去想 AWS 了,我不想一大早就因为想这些事情而毁掉心情。
关系总是慢慢崩坏,然后在某个瞬间突然意识到“一切结束了”——我对 AWS 的感情就是这样。
有一天,我脑子里的开关突然翻转了。我几乎瞬间从 fanboi 变成了 hater。
我把所有东西都迁出了 AWS,关闭了几乎所有账号,只留下一个。
我之所以还在 AWS 留了一点点东西,是因为某些场景下它确实还是最合适的方案——我的域名继续放在 Route53,少量备份继续放在 S3,AWS Workmail 也继续使用(而他们最近刚刚通知我,Workmail 将在 12 个月后停止服务)。
而最近,我又重新回到了 AWS。
“什么???为什么???”
你可能会问。
因为我需要做一些研究和测试。进去,做实验,然后离开。
我想测试一下 Claude/Anthropic 在 AWS Bedrock 上的表现如何(结果和 Claude Code 差不多,但速度更慢,而且比直接订阅 Anthropic 贵得离谱)。
我还想测试一下自己的代码在超级大机器上的性能——我家里最快的机器只有 20 核 CPU 和 32GB 内存,而我想看看在一台 192 核、1TB RAM 的机器上会跑得多快。
于是我登录 AWS 账号,先做了 Bedrock 测试——没什么问题。测试结束后,我关掉了一切。
我不会再回 AWS Bedrock 上用 Claude 了——如果你特别在乎隐私,它倒是不错,但天啊,那价格真的是离谱。
之后不久,我再次登录 AWS,启动了一台 192 核的 EC2 Spot 实例。我已经测试了大约三个小时,然后收到 AWS 发来的邮件:
“怀疑您的账号发生安全入侵。”
AWS 深处某个地方,大概因为我那个长期休眠的账号突然开始使用昂贵的大型机器,于是触发了某种安全警报。
而且我理解他们为什么这么做——这其实是好事——AWS 想保护用户。我对此表示赞同。
但是——他们直接暂停/限制了我的账号。
于是现在:
我的 AWS WorkMail —— 我的主要商业邮箱 —— 彻底不能用了。
没有人能再给我发邮件。
我无法创建任何 AWS 资源。
我也无法继续完成原本想做的测试。
我回复了 AWS 的支持邮件,告诉他们我的账号没有被黑,没有任何问题,也没有异常账单。
没有回复。
当然,我没有购买 Premium Support,所以只能接受他们所谓“24 小时后会回复”。
现在已经过去 3 天了,AWS Support 依然没有任何回应。
于是我又跑去 AWS 论坛发帖,求他们回复。有人告诉我:
“专注完成邮件里要求你做的事情,然后使用 Chat,而不是网页工单,因为 Chat 真的会有人回复。”
好吧。
于是我照做了。
我完成了他们要求的一切——修改密码、删除 Access Token、检查账单等等,然后又等了半小时,终于排到一个 AWS 客服 Chat。
最后那个客服看起来似乎满意了,他说会联系内部专门处理这类问题的人。
那已经是 24 小时前的事情了。
8 小时后我再次追问账号什么时候解除限制,他们只告诉我:
“请耐心等待。”
于是现在,距离 AWS 限制我账号,已经过去四天了。
我依然想完成那台大机器上的测试。
我甚至已经开始害怕接下来还得“申请配额(Request Quota)”才能使用那些机器。
而我的商业邮箱系统依然彻底瘫痪。
这一切都让我再次想起了我为什么离开 AWS,也让我意识到我必须把最后一点尾巴也彻底清理干净:
迁移掉 AWS WorkMail。
把域名从 Route53 搬走。
永远不要再回来。
我真的非常庆幸自己当年离开了 AWS。
而令人悲哀的是,仅仅一次“回访”,就让那个我愚蠢地继续信任 AWS 的邮件系统彻底崩溃。
“骗我一次……”
后面的你都知道了。
也许某一天,他们终于会解除我账号的限制吧。