首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Go 服务里用 sync.Pool 缓存临时对象,为什么有时反而更慢?

Go 服务里用 sync.Pool 缓存临时对象,为什么有时反而更慢?

作者头像
用户12771345
修改于 2026-10-27 14:13:08
修改于 2026-10-27 14:13:08
1130
举报
概述
写过一段时间 Go 服务之后,大概率会在某个热点路径上看到频繁的对象分配,然后想到用 sync.Pool 来复用临时对象、降低 GC 压力。但实际落地时经常遇到一个尴尬情况:加了 Pool 之后压测的分配次数确实降了,接口延迟却没改善,个别场景甚至比不用 Pool 还慢一点。这个问题在 HTTP 中间件、序列化缓冲区、日志字段拼接、协议编解码这些短生命周期对象的场景里特别常见。原因通常不是 Poo

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

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

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