2026 年 9 月底的 RailsWorld 大会上,Ruby on Rails 之父 David Heinemeier Hansson(DHH)站在近千名开发者面前,把 Rust 称为"过去 40 年里发明的最丑陋的编程语言",还补了一刀:每次看 Rust 代码,他都觉得像有人把酸液倒进了眼睛。36氪
几句话之后他话锋一转:如果永远不用亲自看代码,只需要享受应用快上 30 倍、100 倍,二进制小到极致,启动不到一毫秒——他直言自己爱 Rust,反正代码全是 AI Agent 写的。36氪
两周后,DHH 甩出一张成绩单:他让 Agent 把自家群聊应用 Campfire 分别重写成 Elixir、Go、Rust 三个版本,与 Rails 原版同场竞技。聊天室页面加载这一项,Rust 版跑到每秒 36260 个请求,约为 Rails 的 150 倍、Elixir 的 50 倍、Go 的 9.4 倍。36氪
推文浏览量接近 100 万,但评论区没人接"要不要转 Rust"这个话茬,所有人都在算另一笔账:这组对比的起跑线,是不是歪的。36氪
398 次提交,翻出一个公平问题
Google 工程师 Jaana Dogan 的回应传得最广:看到这种结果,你居然没有立刻意识到测试本身肯定有问题——这才是她担心编程未来的原因。36氪
然后是开源社区最擅长的事:翻仓库。截至 10 月 6 日,Rust 版 main 分支已经攒了 398 次提交,Elixir 和 Go 各自只有 3 次。 380 次提交署着 DHH 自己的名字,397 次挤在 9 月 26 日到 10 月 1 日这六天里;合并的性能 PR 有 39 个,包括按房间和时间建索引、缓存页面分区、专用线程读数据库,甚至直接调 ARMv8 的 SHA-256 指令。36氪
三份 AGENTS.md 里的差别更微妙:Rust 版 Agent 接到的指令是,只要能让应用更快,现在可以偏离 Rails 的实现,而且每项性能改动都要交前后测量数据。 Elixir 版接到的任务却是"保留与 Rails 参考实现的行为一致",Go 版则被要求以调优后的 Rust 版为基准。一边是持续优化的压测题,一边是功能移植题,最后把答卷塞进同一张性能表。36氪
一名 Elixir 开发者还发现,Agent 把所有 SQL 查询塞进同一个 GenServer 排队执行,亲手废掉了 BEAM 最引以为傲的并发;其他人重写 Elixir 代码之后,性能直接追到了与 Rust 相当的水平,部分任务甚至反超。36氪
DHH 的回应依旧直接:速度不是衡量代码库的唯一因素,Rust 也有编译慢这样的缺点,但当 Agent 负责写代码并验证输出时,确实需要适应新的现实。36氪
而报道这场风波的 InfoQ 文章,结论更扎心——你可以不写代码,但不能不懂代码。36氪
一场重写潮,不是一个怪人
把 DHH 当孤例,说明还没看清这波重写潮已经铺满全行业。9 月中旬,微软官宣 Rust 在内部获得与 C++、C#、TypeScript 并列的 Tier-1 级工程支持。36氪
为接入 MSVC 生态专门打造的 rustc_codegen_utc 已具备生产条件,超过 100 个微软项目仓库用它完成构建。36氪
推动这件事的微软杰出工程师在招聘帖里写得更狠:目标是到 2030 年,让微软的代码里不再有任何一行 C 和 C++。36氪
近期流传的重写账单,大致长这样:
被 Rust 重写的东西 | 投入/成本 | 声称的收益 |
|---|---|---|
HEY 后端(进行中) | Agent 用 Rust 重写 | CPU 降 99%,内存降 95%,服务器缩到十台 |
Microsoft Copilot 运行时 | 约 12 万美元 token | 运行时整体迁入 Rust |
Bun 工具链 | 燃烧经费约 16 万美元 | 6 天重写 96 万行,99.8% 测试通过 |
网易云音乐(Netodia) | B 站开发者开源重制 | 内存占用为原版十分之一 |
Pi 编码助手(rpi) | Rust 重新实现 | 会话启动耗时降 91%,就绪内存少 78% |
PDF 解析器 LiteParse | Rust 重写 v2.0 | 网页里解析 80 多页 PDF 只要半秒 |
OpenClaw(ZeroClaw) | Rust 实现 | 自身 5MB 内存,STM32 都能跑 |
这张表里,HEY 后端那笔是 DHH 自己报的:CPU 使用量降低了 99%,内存使用量降低了 95%,服务器数量可以缩减到十台。 最"便宜"的一笔是 Copilot 运行时——知乎问题下流传的数字,是微软为此花掉约 12 万美元 token。 最激进的是 Bun:6 天、96 万行 Rust、直接合并。36氪知乎36氪
开源社区这头的账单更具体:PDF 解析工具 LiteParse 用 Rust 重写 v2.0 之后,实测在网页里解析一个 80 多页的 PDF 只要半秒钟。 B 站开发者用 Rust 重制的网易云音乐客户端 Netodia,号称内存占用只需原版的十分之一。 OpenClaw 的 Rust 实现 ZeroClaw,自身只需要 5MB 内存,甚至在 STM32、ESP32 这种微控制器上都能跑起来。微博哔哩哔哩微博
招聘市场也在跟着变向:DeepSeek 的招聘多处点名要求 Rust,一条高赞回答写得很坦白——LLM 出现之前他短暂用过 Rust,因为对人类心智负担太大而放弃,现在好几个 app 都用 Rust,因为 AI 写这玩意儿非常强。知乎
“Rust 写的所以快”?这句话错得最多
小红书上一位把终端工具换了个遍的博主,被评论区问烦了,直接开宗明义:“Rust 写的,所以快"这个最流行的答案,恰好错得最多。 他的拆解值得抄下来:真正的快有四个来源——编译成原生码省掉"启动税”、默认吃满多核、更聪明的算法(uv 装包用硬链接)、更保守的默认值(rg 默认跳过垃圾文件,少干活是最快的快)。这四条,没有一条写着 Rust 的名字。小红书
反例也是现成的:fzf 和 esbuild 都是 Go 写的,一样快。 新语言 Goose 甚至宣称与 Rust 同样内存安全,但更快更简单。小红书哔哩哔哩
那 Rust 真正的硬件级优势在哪?内存,而且是高并发下"等待"的内存。10 月 23 日知乎上的一组本地基准:同时创建 100 万个任务进入等待,Go 进程 RSS 约 2.56GiB,Rust/Tokio 约 0.36GiB。知乎
摊到每个任务,Go 约 2745 字节,Rust 约 384 字节。知乎
差别的来源是 Rust 的无栈协程——等待中的任务不必各自保留一条协程栈,只需保存跨等待点真正要用的数据。但测试者自己把丑话说在前面:100 万个等待任务还不是 100 万个网络连接,socket、TLS、内核开销都没算,这张表不能直接当生产容量。知乎
同样标在价签上的是代价:编译慢,DHH 自己承认;心智负担高,知乎"Rust 的设计缺陷"问题下流传最广的吐槽是——Rust 是个完美的编程语言,前提是你永远不需要读它的代码。知乎
反面案例同样管够:Cloudflare 用 Rust 重写 53 天后,搞出了六年来最大的一次线上失误。 还有个黑色幽默的故事:一家公司的 Rust 团队全员被裁,只因服务写得太稳定——“项目 0 故障、0 报警,那养着 3 个 Rust 工程师没用啊”。 而在 CUDA 和高频量化这些领域,C++ 的地基短期内还轮不到 Rust 来撬。36氪36氪
要不要用 Rust 重写?一份能抄的判断清单
第一档,值得先动手的:新写的、安全敏感的底层模块。知乎上就有用户拿 C++ 边缘网关模块用 Rust 重写了一版做对比,给出的结论正是"新写的、安全敏感的底层代码"里 Rust 明显占优。 大量长连接的等待型服务——上面那组 86% 的内存差是真实存在的结构优势。终端与 CLI 这类周边——VS Code 和 AI 编程工具的搜索,内核早就是 Rust 写的 ripgrep,Ubuntu 新版的 ls 也换成了 Rust 版。 重写这些,等于蹭现成的流水线。知乎小红书
第二档,别被带节奏的:业务 CRUD。“把业务代码换成 Rust 纯属自我感动”——这句来自知乎一个"为什么 Rust 这么火,公司还是主用 Go 和 Java"的高赞回答。 GC 语言跑得顺、性能又不是瓶颈的场景,重写的收益盖不住迁移成本。知乎
第三档,先观察信号的:拿不到可第三方复测收益的"快 N 倍"宣传,一律等复现再说;没有预算养"Agent 反复迭代提交"的团队,慎学 DHH——他那张 150 倍的成绩单,本质是 398 次提交和 39 个性能 PR 堆出来的,语言本身没背这个功,也不该领这个功。接下来值得盯的三件事:rustc_codegen_utc 的推广节奏、Campfire 基准的后续复测,以及 rpi 与 Pi 在目标并发下的总内存差。rpi 0.3.15 打开一份 100 条历史消息的会话用了 16.9 毫秒,原版 Pi 用了 194.9 毫秒。知乎
结语
今天是 1024 程序员节,B 站上有人翻唱了一首《Write it in Rust》:一天不听浑身 panic。 当一门语言开始被填词翻唱,当"borrow checker"变成身份梗,说明 Rust 已经越过技术选型,长出了圈层文化。但对大多数工程师来说,2026 年真正要做的决定不是"Rust 好不好",而是那笔账算得对不对:token 成本、提交预算、编译时间、人头去向。你用 Rust 重写过什么,或者被它的编译时间劝退过什么?评论区把账单晒一晒。哔哩哔哩