Rails 万岁:把 Rust 塞进单体代码库是一种超能力
来源:dev.to — 2026-11-12
📋 概述
DHH 在 Rails World 2026 上公开说手写代码要「放下铅笔」,37signals 正大量使用 Rust,很多人把这当成 Rails 的认输。作者在 Forem(支撑 DEV 的 Rails 单体)里做的恰好是相反的事:一个常驻的 rust-loop 持续把吃 CPU 的 Ruby 热点模块改写为进程内 Rust 扩展,markdown 预处理快约五十四倍,feed 排序快约二十倍且少分配九成七的 Ruby 对象。他的结论是,能在单体里随手插进 Rust 才是 Rails 的加分项,而不是拆分微服务的理由。
🔑 核心要点
- DHH 一边说读 Rust 像往眼睛里倒酸,一边夸它带来三十到一百倍的提速。
- rust-loop 把 Ruby 热点路径移植进 forem_native 扩展,靠 magnus 和 rb-sys 零拷贝借用字符串。
- markdown 预处理、frontmatter 归一化和阅读时长分词快了约 54 倍,Ruby 堆分配为零。
- 过去性能撞墙就得拆出 Go 或 Rust 微服务,如今这道悬崖基本消失了。
💡 金句
“The fact that dropping Rust into a Rails codebase is this accessible is a feature, not a bug.”
译:把 Rust 放进 Rails 代码库能这么顺手,这是特性,不是缺陷。
👍 0
👎 0
← 返回 dev.to 首页