database/sql
已收录文章:46篇
-
分析字符串拼接和 []byte 转换成本,用 Builder、Buffer 和清晰边界减少分配。404 收藏
-
说明 inuse_space、alloc_space 和对象生命周期的区别,帮助判断内存占用和分配压力。383 收藏
-
建立基线、压测、profile、优化、复测和回归流程,验证性能改动效果。383 收藏
-
Golang · Go问答 | 3个月前 | golang · 连接池 · database/sql · Go问答 · 连接池 事务 DBStats rows.Close Go database/sqlGo database/sql 里漏掉 Rows.Close,问题往往不是某一次查询报错,而是连接长期被结果集占着,最终让连接池等待堆积。本文从 DBStats 指标和事务生命周期入手,复现现象,解释 Rows、Tx 与连接归还的关系,并给出可复查的代码边界。374 收藏
-
解释 GOGC、heap goal 和分配速率的关系,建立 Go 服务内存预算。362 收藏
-
整理并发治理上线前必须确认的 context、限流、连接池、降级和监控事项。357 收藏
-
Golang · Go问答 | 4个月前 | 连接池 · database/sql · Go问答 · 线上排查 · MaxOpenConns Go数据库连接池 DBStats Go问答 sql.DB WaitCountGo 服务接口突然变慢,sql.DB 连接池被打满是常见原因之一。排查时要先看 OpenConnections、InUse、Idle、WaitCount 和 WaitDuration,再决定是降载、回滚、调连接数,还是修慢查询和事务占用。355 收藏
-
配置 http.Client 和 Transport 超时,避免下游慢响应占满资源。351 收藏
-
把 HTTP 请求耗时拆成处理、下游、序列化和写回阶段,定位 P99 主要来源。341 收藏
-
通过 goroutine profile、阻塞栈和请求路径定位泄漏来源。339 收藏
-
通过逃逸分析识别热路径堆分配,减少接口装箱、闭包捕获和不必要对象分配。320 收藏
-
把一次请求拆成入口、并发扇出、下游调用、取消和收尾几个阶段,建立并发治理的全局视角。301 收藏