Go 的 GC 突破,Green Tea 上线:快、省、现代化
Go语言一直是我最喜欢的编程语言。主要是因为可以跨平台。Go 1.25 推出了一种全新的垃圾回收器 Green Tea,名字听起来像是下午茶,背后却是一场工程师对抗 CPU 架构趋势的苦战。Google 已在生产环境上用上这个新 GC,引起了技术圈不少关注。有人说这就是现代 CPU 的解法,也有人担心“页面优先”的设计是否会牺牲通用性。来看看,这个叫 Green Tea 的到底是饮料还是真货。
为什么这件事值得关注
垃圾回收器(GC)是所有现代语言的痛点,特别是在 Go 这种强调并发和可预测延迟的系统语言里。GC 影响的不只是性能,更可能左右一个服务的资源开销和可扩展性。Green Tea 的出现是 Go 官方对过去性能瓶颈的正面回应,它不只是优化,而是思路大改。
关键点
- Green Tea 改为以「页」(page)为单位扫描对象,取代传统的对象级遍历。
- 实测在 Google 内部,GC 时间平均减少 10%,某些场景最高达 40%。
- 借助 AVX-512

