Go语言技术文章
-
Golang · Go问答 | 1星期前 | 云原生 · golang · 性能优化 · kubernetes · HPA · Go HPA不扩容 Kubernetes HPA CPU resources requests HPA并发指标 Go服务扩缩容
Go 服务部署到 Kubernetes 后,HPA 没有按预期扩容,常见原因不是 HPA 失效,而是 CPU 利用率与 requests 的关系、业务真实瓶颈和缩放行为没有对齐。本文用最小 HPA 配置说明何时选 CPU、何时考虑并发或队列指标,以及如何避免扩缩容抖动。111 收藏 -
Redis Streams 消费者在确认消息前宕机时,消息会留在待确认列表。本文说明如何通过 XAUTOCLAIM 有节制地接管超时消息,并监控重试与清理结果。110 收藏 -
Golang · Go教程 | 1星期前 | golang · 缓存 · singleflight · go · 高并发 · 后端开发 · Go 并发控制 缓存失效 请求合并 singleflight 回源
一个热门缓存键刚失效时,几百个请求可能同时回源,把数据库或下游接口推到峰值。Go 的 golang.org/x/sync/singleflight 能让同一个 key 的重叠调用只保留一趟加载,其余调用等待并复用结果。这里用一个商品读取场景说明放置位置、key 范围、多实例边界、错误传播和上线核对项。109 收藏 -
Golang · Go问答 | 2星期前 | 并发安全 · RWMutex · sync.Map · Go问答 · map并发 · RWMutex sync.Map Go问答 Go map并发读写 concurrent map writes
Go map 不是并发安全容器,多个 goroutine 同时写或读写交错时可能触发 fatal error。本文从线上 panic 现场出发,说明如何复现、定位原因,并在 RWMutex、sync.Map 和单 owner 模型之间做选择。102 收藏 -
一个全局 QPS 阈值只能挡住总流量,挡不住单个租户或重接口挤占资源。本文用 Go 的令牌桶限流器拆解全局、租户、接口三层配额的取舍、最小实现和观察指标。100 收藏 -
Golang · Go问答 | 5天前 | 配置 · 设计模式 · 架构 · Go问答 · 代码重构 · Go 默认值 配置参数 参数校验 构造函数 option Functional Options
Go 的构造函数参数从 3 个长到 8 个后,直接继续加位置参数会让调用点难读也难兼容。Functional Options 能把可选配置变成具名、可组合的设置项,但它不适合承载必填依赖或运行期变更。本文给出最小实现、交叉校验和选择清单。100 收藏