Python 异步服务升级前,检查取消、连接池和重试 📅 2026/8/14 17:22:09 Python 异步服务升级前检查取消、连接池和重试换 Python、事件循环或 HTTP 客户端版本后代码能启动不代表行为完全一致。异步服务最值得回归的是请求取消后资源有没有放回去。先固定当前基线记录解释器、事件循环、客户端和依赖锁文件。使用同组请求测量连接数、任务数、队列等待和失败分类。不要同时升级多套核心依赖否则差异很难归因。专门测试中断场景让上游超时、客户端断开、DNS 失败和响应读取中断检查 semaphore、连接池与文件句柄都能释放。捕获CancelledError时完成必要清理后继续传播不要把取消吞成普通失败。重试总预算不能变长核对客户端默认重试与业务重试是否叠加。只有幂等、明确可恢复的调用才重试并限制次数、退避和整条请求时限。异步 bug 往往不在成功路径。把取消和失败测透升级后的“看起来没问题”才有证据支撑。