Description
在站内看到过几篇不错的编程语言恩情课文,有 Python 的,C / C++ 的,Java 的,但是搜了下似乎没有看到 Rust 作主角的,遂结合近期发生的 Cloudflare 故障自己整了一个。视频配音为本人自配,质量不好请见谅。动画使用 PPT 制作,故意加入了很多生草的动画效果。
参考文献
恩情课文 《金爷爷用石子击落美国卫星》
2025 年 11 月 18 日的 Cloudflare 故障,以及官方故障报告公布的造成故障的 Rust 代码(参见https://blog.cloudflare.com/18-november-2025-outage/#memory-preallocation)
Lazo Velko 的 2h 批判 C++ 视频 The worst programming language of all time
BV1vNS7YTEPD Python 爷爷用 object 打下类型错误
BV1TdUTYbEWB C 语言爷爷亲自消灭悬空指针
BV111SXYdEwL C++ 爷爷用虚函数打下 Python 运行环境
BV1FLUYYXEG4 Java 爷爷亲自击落 NullPointerException
Credits
视频中出现的 Rust, C++ 编程语言图标来自于 OpenVtuberLogos
Rust 吉祥物螃蟹 Ferris 图标来自 Rust 语言官方发布,汇总见 https://rustcc.cn/article?id=dfa13732-ce5f-4ba1-be04-af8aa50def12
CPU 和 debugger 的图标来源于 SVGRepo
Cloudflare 图标来自 Wikipedia
关于 Cloudflare 事故的漫画为 JAnim 讨论群的群友用 AI 生成
Comments
[doge_金箍]
♥ 290 ↩ 8
rust爷爷使用unwrap()被程序异常击落✓
♥ 281 ↩ 3
下一章:rust将军使用unsafe法
♥ 64 ↩ 2
不过有一说一,rust并不认为自己有异常,Result就是一个被标记了#【must_use】且可用?提前返回的枚举罢了[doge](图片出自rust官方教程)
♥ 53 ↩ 2
然后程序异常落下来把所有人都砸死了[笑哭]
♥ 42 ↩ 2
.unwrap()出错就死机,如果是工业控制,那就出事故了。最好是能获取异常,并去判断处理。
♥ 34 ↩ 20
把我头塞马桶里都想不到这个位置会panic, 所以unwrap我都当成断言用
♥ 28 ↩ 4
话说如果要是其他语言讲这个错误不处理正常的运行下去会不会导致更严重的错误?感觉rust故意那么做的,我觉得unwrap的使用很明确,如果这步不正确处理,那就将整个程序炸了,总比随着异常的累积导致更严重的问题出现吧[思考]
♥ 26 ↩ 5
Cloudfare: \😭/
♥ 21
Cloudflare:说的太对了(
♥ 13
我上来就是一个std::panic::catch_unwind[doge]
♥ 11 ↩ 2
编程界原神
♥ 10
不懂,我一直用的unwrap_or_else()[doge]
♥ 8 ↩ 6
ruat对c++的优势以内存安全助称,而内存安全主要又以堆内存的管理为主,那我c++不用堆的话,rust的优势不就没了?
♥ 4 ↩ 6
Rust恩情还不完[初音未来_哭了]
♥ 3
不是击落程序?
♥ 3
被panic吓哭了
♥ 3
在 Cloudflare 的旧版 FL1 智能体中,该关闭操作在特定条件下触发了规则模块中的旧有代码缺陷,导致系统在处理名为“execute”的规则动作时出现 Lua 运行错误,最终返回 HTTP 500 状态码。代码【复制】【lua】 Failed to run module rulesets callback late_routing /usr/local/nginx-fl/lua/modules/init.lua:314 attempt to index field 'execute' (a nil value)出现问题的规则原本用于内部规则验证机制,关闭后系统在处理结果时访问了不存在的对象,从而触发异常。Cloudflare 表示,该代码问题已存在多年,而在新版基于 Rust 的 FL2 智能体中不会出现。
♥ 3
don't panic [doge]
♥ 3