用户12771345
Go 服务里处理超时与重试的几个关键细节:context、deadline 和幂等性
原创
关注作者
腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
用户12771345
社区首页
>
专栏
>
Go 服务里处理超时与重试的几个关键细节:context、deadline 和幂等性
Go 服务里处理超时与重试的几个关键细节:context、deadline 和幂等性
用户12771345
关注
发布于 2026-11-10 14:11:12
发布于 2026-11-10 14:11:12
18
0
举报
概述
线上有个 Go 服务,调用下游 HTTP 接口超时后客户端会重试,结果偶尔出现重复写入。排查后发现是 context 的超时设置和重试逻辑耦合在一起:外层给整个请求设了 3 秒 deadline,内层 HTTP client 又自己设了 2 秒超时,重试时复用同一个 context,导致第二次调用其实已经过期,直接返回 context deadline exceeded。同时下游接口本身不是幂等的
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系
cloudcommunity@tencent.com
删除。
go
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档