网易首页 > 网易号 > 正文 申请入驻

每年省30万美元!实习生用Rust给TikTok火速降本,开发者吐槽:放在小公司顶多省300块

0
分享至


整理 | 郑丽媛

出品 | CSDN(ID:CSDNnews)

在开发者圈内,时而会听到这样一个观点:

“别费劲去做优化了,反正计算机运行速度快,没必要为了那点性能而浪费开发时间。”

这话说得有些道理,但并不完全对,毕竟——某些情况下,服务器账单也很贵。

不久前,一位 TikTok 实习生Xiaoyun Wu 分享了一件很有代表性的事:他在 TikTok 实习期间,用 Rust 重写了核心支付服务中的部分 Go 模块,让性能提升 2 倍、延迟降低 76%、CPU 使用率减少三分之一,并为公司节省了每年约 30 万美元(约合人民币 213 万元)的云成本

虽然对 TikTok 这样的大公司来说,30 万美元的节省看似不多,但别忘了——这只是一个服务的部分重写,还是实习生干的。



外科手术式重构用 Rust重写“最疼的那一块”

在 Xiaoyun Wu 的个人博客中,他提到 TikTok LIVE 的支付服务原本是用 Go 编写的核心系统,多年来运行稳定。本身 Go 凭借简洁语法和并发模型,就非常适合快速迭代微服务。

但随着 TikTok LIVE 业务爆发式增长,这个“老黄牛”开始吃不消了——CPU 占用居高不下、服务频繁触发稳定性告警,团队不断扩容以维持性能,导致云成本也一路飙升。

经过分析,问题主要集中在几个高频 API:用户余额查询与统计数据拉取。这些接口计算密集、流量极大,占据了大部分 CPU 时间。然而常规 Go 层面的优化空间有限,因此不是代码写得不好,而是语言特性已到极限

“普通的 Go 优化手段已经难以带来突破性改进,”正如 Xiaoyun Wu所说,“我们需要一个更强大的解决方案来解决这个有针对性的问题。”

在导师和同事的指导下,Xiaoyun Wu 将解决方案分为三个关键阶段:

(1)精准重写:Rust“外科手术式”介入

他们没有盲目推倒重来,而是进行了一次“外科手术式”重构:只将性能最关键、最吃CPU的几个接口用 Rust 重写,其他逻辑仍保持在 Go 中。毕竟Rust 以接近底层的性能和内存安全著称,本身就非常适合这种高并发、高密度计算场景。这种多语言架构(polyglot approach)让团队既能保持 Go 的开发效率,又能在性能关键点释放 Rust 的威力。

简言之——Rust 只进攻“瓶颈”,而 Go 继续守全局。

(2)正确性验证快,不代表对

性能再好,如果结果错误也毫无意义,因此第一步不是压测,而是验证“结果完全一致”。为此,Xiaoyun Wu 他们先让 Rust 版本的新服务在“影子模式(shadow mode)”下运行:实时接收生产流量的副本,与原 Go 服务并行处理。

每一个请求的响应结果都会通过验证管线进行逐条对比。经过数周比对,确保 Go 和 Rust 版本之间的数据一致率达到 100% 后,他们才进入了下一阶段。

(3)压测阶段:看它能跑多快

正确性无误后,终于到了关键时刻。他们在生产环境中建立了两个完全相同的集群:一个跑原版 Go 服务,一个跑新的 Rust 服务,用 16000 个真实(已匿名化)用户 ID 构造数据,从低负载逐步拉升到极限, 整个过程中监控二者的 QPS、延迟、CPU 和内存使用率。


优化结果:性能翻倍,成本腰斩

测试结果超出所有人的预期:


此外,Xiaoyun Wu 提到在某关键的接口中,Rust 服务在同等硬件下的处理能力从 85000 QPS 提升至 150000 QPS——性能提升约 1.8 倍;在另一个高频接口中,Rust 版本更是从 105000 QPS 提升到 210000 QPS——实现性能翻倍。

得益于这种性能飞跃,每台机器都能承载更多流量,团队也因此直接削减了约 400 个 vCPU 核心,折算下来一年可节省约 30 万美元云开销

尽管如此,但 Xiaoyun Wu 也在博文中强调,这并不是一个“Rust 比 Go 更强”的故事:“选对工具,才能解决对问题。Rust 在极少数瓶颈服务中能发挥奇效,但 Go 的开发效率和性能平衡依然让它成为 95% 微服务的最佳选择。”


从 NUS 到 TikTok:一名实习生的成长轨迹

翻看 Xiaoyun Wu 的履历,他能实现这样的结果也并非偶然。

目前他就读于新加坡国立大学计算机科学专业,辅修统计学,研究方向集中在编程语言与并行计算。在校期间,他已经多次主导性能优化项目,并开发了自己的语言实验项目 “RustScript”——一个融合 Rust 语法与 TypeScript 简洁性的静态编译语言。

与此同时,他的实习经历也几乎都在围绕“性能优化”展开

● 在 TikTok Global LIVE Wallet 团队(2024.12-2025.08)期间,除了上文提到的把部分 Go 服务重写为 Rust,他还在Oncall Agent中开发了AI驱动的分析器和自动结论功能,显著提升了Wallet服务的值班效率;并运用Golang、LLM及向量数据库对相关事件进行排序,能自动分析日志并给出问题定位建议,大幅减轻运维负担。

● 在 TikTok LIVE Money Platform(2024.05-2024.08)期间,他负责前端构建优化,将资产打包速度提升一倍,将 CI/CD 流水线时间从 15 分钟压缩至 10 分钟,并通过迁移到 Rspack 提升构建性能。

● 更早之前(2023 年),他还曾在志愿福利组织计算部门中,将一个 Ruby on Rails 系统迁移至 Go,让后端响应速度提升 5 倍。

或许正因这种“学术与实战结合”的背景,让他在面对 TikTok 这样的大规模分布式系统时,能够采取一些严谨的“科学方法”进行工程优化。


“优化到底是否有意义?”——开发者的分歧

Xiaoyun Wu 的这篇博文在 Reddit 上引发了广泛讨论,尤其是那句“实习生用 Rust 给 TikTok 省了 30 万美元”成为了开发者的焦点。


一些人认为这证明了优化依然重要;也有人觉得,这其实是“大公司特有的游戏”

“如果你的创业项目比 TikTok 小 1000 倍,那同样的优化你最多只能省 300 美元,而团队人力成本将远超这个收益。”
“规模越大,优化带来的节省也越惊人。没人会为了省几块钱就去用 Rust 重写服务。TikTok 的节省之所以可观,是因为他们本来每年就在这部分云资源上花费数百万美元,所以他们省下的这 30 万美元,并不算“性能优化奇迹”。而绝大多数初创公司,根本不会有这种流量规模,也不需要这么多算力。”
“关键词其实是‘规模’。在一家公司的成长中,会经历一个微妙的转折点:从“服务器比人便宜”,到“人比服务器便宜”。而如何跨过这道坎,是扩张中的最大挑战之一。 大致可以分成三个阶段: (1)初期阶段:服务器账单太低,性能优化赚不回投入的工程时间。 (2)中间阶段:服务器开销高到值得优化,但还不如花精力去开发能带来收入的新功能。 (3)成熟阶段:服务器成本高到必须关注性能,否则利润会被吃光。 很多工程师(包括我)都喜欢钻研性能,但在第二阶段,这样做往往不是最优决策。优化的时机,和优化的必要性,其实比优化本身更重要。”

在众多开发者的讨论中,一个共识逐渐浮现:性能优化不是无意义的,但必须精准、量化、聚焦在值得和合适的地方。那么,你对于这个问题又有何看法呢?

https://wxiaoyun.com/blog/rust-rewrite-case-study/

https://www.reddit.com/r/programming/comments/1okf0md/tik_tok_saved_300000_per_year_in_computing_costs/

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
欧冠16强已定12席:英超6队全入围!去年亚军出局 意甲或全军覆没

欧冠16强已定12席:英超6队全入围!去年亚军出局 意甲或全军覆没

我爱英超
2026-02-25 06:26:28
别再存定期了!央行释放重要信号:普通人的财富保卫,主战场已变

别再存定期了!央行释放重要信号:普通人的财富保卫,主战场已变

复转小能手
2026-02-24 17:31:33
绿地建设集团破产审查

绿地建设集团破产审查

地产微资讯
2026-02-23 18:36:51
博德闪耀CEO:我们必须使用人工草皮,这里根本种不了天然草

博德闪耀CEO:我们必须使用人工草皮,这里根本种不了天然草

懂球帝
2026-02-25 12:18:36
吵架将孩子扔河里后续:原因曝光,夫妻身份被扒,娃状态让人担忧

吵架将孩子扔河里后续:原因曝光,夫妻身份被扒,娃状态让人担忧

社会日日鲜
2026-02-24 09:37:52
巴拿马强硬接管长和双港口,关键时刻,中方给特朗普访华泼了冷水

巴拿马强硬接管长和双港口,关键时刻,中方给特朗普访华泼了冷水

阿銍武器装备科普
2026-02-25 10:51:38
徐湖平家族:若不事发~

徐湖平家族:若不事发~

瓜哥的动物日记
2026-02-25 11:11:12
你经历过道德绑架吗?网友:事实证明没有道德就不会被绑架

你经历过道德绑架吗?网友:事实证明没有道德就不会被绑架

带你感受人间冷暖
2026-02-21 19:12:24
无一队幸免!文班亚马生涯3年至今已帽遍联盟29支球队!

无一队幸免!文班亚马生涯3年至今已帽遍联盟29支球队!

田先生篮球
2026-02-24 16:23:19
18点05分CCTV5直播!中国PK日本男篮!郭士强重用2小将赢球概率大

18点05分CCTV5直播!中国PK日本男篮!郭士强重用2小将赢球概率大

老吴说体育
2026-02-25 12:14:49
美论坛:如果中国发电量真的世界第一,为什么夜晚没有印度亮?

美论坛:如果中国发电量真的世界第一,为什么夜晚没有印度亮?

咸鱼金脑袋
2026-02-25 14:09:20
女子在河南中灵山失联10日后遗体被找到,父亲发声:希望弄清女儿死因,让她死得明明白白

女子在河南中灵山失联10日后遗体被找到,父亲发声:希望弄清女儿死因,让她死得明明白白

扬子晚报
2026-02-25 11:16:22
WTT新加坡大满贯爆冷!日本两大主力0-3惨败,韩国头号种子一轮游

WTT新加坡大满贯爆冷!日本两大主力0-3惨败,韩国头号种子一轮游

越岭寻踪
2026-02-24 14:37:34
中国第一监狱:关的几乎全是高官,为防止泄密,牢房内有特殊布置

中国第一监狱:关的几乎全是高官,为防止泄密,牢房内有特殊布置

瓦伦西亚月亮
2026-02-20 17:37:18
韩信刚死满朝欢呼,张良一句话吓瘫刘邦:四十万匈奴压境 谁去退

韩信刚死满朝欢呼,张良一句话吓瘫刘邦:四十万匈奴压境 谁去退

老谢谈史
2026-02-24 11:12:25
彻底瘫痪!两年了为何许家印迟迟不判刑?真相比你想象的更复杂

彻底瘫痪!两年了为何许家印迟迟不判刑?真相比你想象的更复杂

历史伟人录
2026-02-24 18:19:45
精神小妹的生活原来是这样的!网友:终于知道她们为啥都这么瘦了

精神小妹的生活原来是这样的!网友:终于知道她们为啥都这么瘦了

深度报
2026-02-11 23:35:03
江西南昌一家人自驾返程途中发生车祸,目击者称一半的车身被大货车挤压

江西南昌一家人自驾返程途中发生车祸,目击者称一半的车身被大货车挤压

观威海
2026-02-25 10:26:09
18分钟输28分!队魂成拖油瓶,所有输球组合里都有他!真砸手里了

18分钟输28分!队魂成拖油瓶,所有输球组合里都有他!真砸手里了

阿浪的篮球故事
2026-02-24 16:06:20
我用三个真实的病例告诉你:为啥我总建议重症病人去一线城市看病

我用三个真实的病例告诉你:为啥我总建议重症病人去一线城市看病

千秋文化
2026-02-24 20:25:25
2026-02-25 14:44:49
CSDN incentive-icons
CSDN
成就一亿技术人
26332文章数 242234关注度
往期回顾 全部

科技要闻

“机器人只跳舞,没什么用”

头条要闻

15岁少女和姐姐吵架后失联半月 父亲悬赏100万寻人

头条要闻

15岁少女和姐姐吵架后失联半月 父亲悬赏100万寻人

体育要闻

曝雄鹿计划今夏追小卡 字母哥渴望与其并肩作战

娱乐要闻

撒贝宁到沈阳跑亲戚 老婆李白模特身材

财经要闻

春节档"开门黑" 电影票少卖了7000万张

汽车要闻

750km超长续航 2026款小鹏X9纯电版将于3月2日上市

态度原创

艺术
家居
旅游
数码
军事航空

艺术要闻

这位艺术家的马赛克画让人惊叹不已!

家居要闻

艺居办公 温度与效率

旅游要闻

稳坐流量c位!天下第一泉风景区新春活动引爆文旅市场

数码要闻

宏碁:今年PC价涨量跌 但整体销售额将维持成长

军事要闻

俄乌冲突四周年:和平谈判希望渺茫

无障碍浏览 进入关怀版