超时控制
已收录文章:56篇
-
把一次请求拆成入口、并发扇出、下游调用、取消和收尾几个阶段,建立并发治理的全局视角。301 收藏
-
Go 的 time.Timer 不是改一个时间数字那么简单:Reset 前要先处理已经到达的旧事件,重置后还要保证只有一条超时路径能结束本次等待。本文用可复现的请求超时流程说明 Reset、Stop、通道读取和 context 的边界。291 收藏
-
用 PHP 写一个小型 HTTP 探测器,重点不是只把远程接口请求通,而是给连接设置超时、拿到状态码、记录耗时和错误信息,并让接口返回可验收的 JSON。文章用原生 stream_context_create 串起入口接口、请求函数、日志文件和验收清单,适合放进定时任务或后台健康检查。289 收藏
-
为什么需要超时控制? 请求时间过长,用户侧可能已经离开本页面了,服务端还在消耗资源处理,得到的结果没有意义 过长时间的服务端处理会占用过多资源,导致并发能力下降,甚至出273 收藏
-
使用 errgroup.WithContext 同时启动多个下游任务,并在任一任务失败时取消其它任务。273 收藏
-
Golang · Go教程 | 2个月前 | Context · 超时控制 · Go教程 · Go context 请求超时 Transport http.Client Client.Timeout ResponseHeaderTimeoutGo HTTP 客户端超时不要只靠一个 context 或一个 Client.Timeout。更稳的做法是把总预算、连接、TLS 握手、响应头和读取阶段分开设置,再用错误判断和日志字段确认到底卡在哪一段。218 收藏
-
Golang · Go教程 | 3个月前 | 超时控制 · 故障排查 · Go教程 · 后端工程 · Golang实战 · HTTP客户端 · golang Go 性能优化 net/http context Transport 超时 http.Client 生产实践从一次下游接口卡死导致 goroutine 和连接堆积的事故出发,讲清 Go http.Client Timeout、Transport 超时、Request Context、连接复用、重试边界和上线检查。205 收藏
-
通过有界 channel、select 和 context,把压力显式传回生产端。183 收藏
-
理解 Allow、Wait、Reserve 和 Burst 的区别,给接口加上可解释的限流策略。181 收藏
-
在 database/sql 中使用 QueryContext、ExecContext 和事务 context。175 收藏
-
根据读写频率、临界区大小和语义选择同步工具。173 收藏
-
给非核心依赖设计 fallback,让主流程在部分失败时仍可返回。167 收藏