Go HTTP 客户端超时设置:99% 的人都在犯同一个错
标签
摘要
Go 的 HTTP 客户端超时是生产故障高发点。常见错误是不设超时,或只设 Client.Timeout,而 DialContext 默认为 0,DNS 卡住会无限挂起。应同时配置建连、响应头、空闲连接等超时,并复用 Client 以利用连接池。context 超时适合单请求精细控制,Client.Timeout 作用于全局。收到响应头后 body 读取仍可能挂住,需另行限制;高并发时还要配置连接池参数,避免耗尽连接。
文章内容