一天重写 JSONata,我用 400 美元干掉了公司 50 万美元的 K8s 集群

本文永久链接 – https://tonybai.com/2026/04/01/rewrote-jsonata-in-golang-with-ai 大家好,我是Tony Bai。 过去的几年,我们见证了 AI 编程工具从“玩具”到“神器”的进化。无数开发者都在分享自己效率翻倍的喜悦。 你有没有想过,用 AI 来完成一次“外科手术式”的精准重构,一天之内,就能帮你把公司每年烧掉的 50 万美元(约 360 万人民币)的服务器成本,直接砍到零? ...

April 1, 2026 · 7 min · Tony Bai

Go 微服务重构实录:当后端性能提升 10 倍,移动端体验为何反而崩塌?

本文永久链接 – https://tonybai.com/2026/02/13/go-microservices-refactoring-10x-backend-vs-mobile-collapse 大家好,我是Tony Bai。 在软件工程的世界里,“快”通常被视为绝对的褒义词。我们追求更低的延迟、更高的吞吐量、更少的 CPU 占用。当一个团队决定将遗留的 Python 单体应用重构为 Go 微服务时,他们的目标显而易见:性能提升。 ...

February 13, 2026 · 9 min · Tony Bai

Go 1.26 发布在即,为何 json/v2 依然“难产”?七大技术路障全解析

本文永久链接 – https://tonybai.com/2026/02/11/go-1-26-json-v2-delay-7-technical-roadblocks 大家好,我是Tony Bai。 Go 1.26 预计将于本月(2026 年 2 月)正式发布。然而,在即将到来的 release notes 的欢呼声中,有一个备受瞩目的名字依然带着“实验性”的标签躲在 GOEXPERIMENT 背后——那就是 encoding/json/v2。 ...

February 11, 2026 · 9 min · Tony Bai

再见,丑陋的 container/heap!Go 泛型堆 heap/v2 提案解析

本文永久链接 – https://tonybai.com/2026/02/04/goodbye-container-heap-go-generic-heap-heap-v2-proposal 大家好,我是Tony Bai。 每一个写过 Go 的开发者,大概都经历过被 container/heap 支配的恐惧。 你需要定义一个切片类型,实现那个包含 5 个方法的 heap.Interface,在 Push 和 Pop 里进行那令人厌烦的 any 类型断言,最后还要小心翼翼地把这个接口传给 heap.Push 函数…… ...

February 4, 2026 · 7 min · Tony Bai

我用 Go 重写了 Python 网关,性能提升 10 倍,却成了职场噩梦

我用 Go 重写了 Python 网关,性能提升 10 倍,却成了职场噩梦 - Tony Bai Tony Bai 一个程序员的心路历程 Google Go语言编码风格规范 Google Go语言编码风格规范:指南篇 Google Go语言编码风格规范:决定篇 Google Go语言编码风格规范:最佳实践篇 Go语言第一课FAQ ...

February 1, 2026 · 5 min · Tony Bai

TypeScript 编译器 Go 重写版提速 10 倍:微软团队深度揭秘幕后工程细节

本文永久链接 – https://tonybai.com/2026/01/27/typescript-compiler-go-rewrite-10x-speed-microsoft-details 大家好,我是Tony Bai。 “JavaScript 是一门很棒的语言,但它并不是为了编写编译器而设计的。” 备受瞩目的 TypeScript 编译器 Go 重写版(代号 TypeScript 7.0)已经取得了惊人的 10 倍性能提升。在最近的 GopherCon 2025 上,来自 Microsoft TypeScript 团队的 Jake Bailey 带来了一场干货满满的分享,深度揭秘了这场跨语言大迁徙背后的工程挑战与技术细节。 ...

January 27, 2026 · 8 min · Tony Bai

Goroutine 栈增长机制新提案:用缺页中断替代栈检查?Rob Pike 亲自下场“劝退”

本文永久链接 – https://tonybai.com/2025/11/20/proposal-improve-goroutine-stack-using-page-faults 大家好,我是Tony Bai。 Go 语言的 goroutine 以其轻量和高效著称,而其背后一个关键的“魔法”便是可动态增长的栈 (Resizable Stacks)。然而,支撑这个魔法的机制——在几乎每个函数入口处插入的“栈检查”指令——也并非毫无代价。 ...

November 20, 2025 · 5 min · Tony Bai

Go 泛型再进化:移除类型参数的循环引用限制

本文永久链接 – https://tonybai.com/2025/11/19/proposal-remove-cycle-restriction-for-type-parameters 大家好,我是Tony Bai。 自 Go 1.18 引入泛型以来,Gopher 们一直在探索其能力的边界。然而,在这片新大陆上,一直存在着一个由语言规范施加的限制,它禁止了一种强大而富有表达力的泛型模式的实现。 ...

November 19, 2025 · 7 min · Tony Bai

PGO 驱动的“动态逃逸分析”:w.Write(b) 中的切片逃逸终于有救了?

本文永久链接 – https://tonybai.com/2025/11/13/proposal-dynamic-escapes 大家好,我是Tony Bai。 io.Writer,这个在 Go 语言中无处不在的神圣接口,其背后却隐藏着一个困扰了性能敏感型开发者多年的“隐形成本”。当你将一个在函数内创建的字节切片 b 传递给 w.Write(b) 时,这个切片几乎总是会逃逸 (Escape) 到堆上,导致一次不必要的内存分配。 ...

November 13, 2025 · 5 min · Tony Bai

Go 标准库将迎来 Zstandard:性能超越 Gzip,让你的应用更快、更省

本文永久链接 – https://tonybai.com/2025/11/08/proposal-zstd 大家好,我是Tony Bai。 在 Go 的世界里,一项被社区翘首以盼的提案在沉寂一年后,终于迎来了决定性的进展。2024 年,将 Zstandard 压缩算法纳入标准库的提案(#62513)被正式 Accept,但在那之后便鲜有动静。直到最近的 Go 编译器与运行时会议纪要中透露,这项工作将由社区的明星开发者 Klaus Post 主导推进。 ...

November 8, 2025 · 7 min · Tony Bai