一个 K8s Operator 里 slice append 导致不同调用方的资源配置互相污染,排查过程揭开 slice 底层结构的全部秘密:胖指针、共享底层数组、扩容策略、nil vs 空 slice,以及那些年我们踩过的坑。
生产环境的 K8s controller 突然 fatal error: concurrent map read and map write 崩溃退出,不是 panic,recover 也救不了。从这个事故出发,搞清楚 map 的并发问题、 …
K8s admission webhook 返回了一个 typed nil pointer,导致 error != nil 却打印不出任何错误信息。搞清楚 nil interface vs typed nil、值接收者 vs 指针接收者、类 …
K8s Operator 每隔几分钟就被 kubelet 杀掉重启,健康检查超时。排查发现是 GC 停顿导致的。搞清楚 GC 为什么会停顿、什么时候触发、GOGC 和 GOMEMLIMIT 怎么调,这些是面试和实战中真正需要知道的。