Python 异步服务上线前:并发、队列和超时从配置注入
异步服务的参数若散落在装饰器和常量里,换一套资源限制就很难解释。并发数、队列容量、超时和重试应作为一组配置校验。
参数之间有关系
入口并发不能超过下游可承受容量;队列满时定义拒绝或降级,不使用无界 Queue;单次外部调用超时要小于整条请求预算。重试只用于可重试错误,并加入退避和总次数限制。
启动时校验正数、上限和预算关系,日志输出非敏感摘要。semaphore 许可放在 finally 或上下文管理器中,取消和异常路径都能释放。
关闭流程也要测
收到终止信号后停止接单,取消后台循环,再等待已接任务到达配置预算。测试依赖超时、队列已满、调用方取消和重复关闭。上线参数来自目标环境容量测试,不把示例默认值当成生产建议。