木杉笔记

记录后端、运维与数据库的踩坑日常

写了一周 Rust 的感受

2026-08-05编程

项目里有个 CPU 密集的小服务,Go 写出来 GC 压力有点大,就想着用 Rust 重写试试。之前一行 Rust 没写过。

前两天:想放弃

借用检查器能把人气死。明明逻辑上没问题的代码,编译就是不过。

let r = &mut v[0];
v.push(1);  // error: cannot borrow `v` as mutable more than once

当时心想这不是故意找麻烦吗。后来才明白,这种代码在 C++ 里就是悬垂引用,只是编译器不告诉你。

第三天:开窍

开始理解所有权模型之后,写法就自然变了。不是"怎么绕过检查器",而是"数据本来该怎么组织"。

第五天:真香

重构的时候特别明显。改一个结构体的字段,编译器把所有受影响的地方全给你列出来。这种安全感是动态语言给不了的。

结论