首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Go 里用 sync.Pool 缓存临时对象,别把它当万能池

Go 里用 sync.Pool 缓存临时对象,别把它当万能池

作者头像
用户12771345
发布于 2026-11-14 10:29:27
发布于 2026-11-14 10:29:27
10
举报
概述
线上服务做 JSON 序列化时,每个请求都 json.Marshal 一次,压测下来 GC 频率明显偏高,pprof 里 encoding/json 的分配占了大头。同事建议用 sync.Pool 缓存 bytes.Buffer,改完压测确实稳了一些,但过了一周发现偶发的问题:从池里取出来的 buffer 带着上次请求的残留数据,偶尔序列化结果多出一截旧的 JSON 片段。这类 bug 不会每次都

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档