任务批量切片算法与 ThreadPoolExecutor 并发限流
解密 batch_runner.py 任务分配机制、线程池动态收缩与异常恢复
📊 图 12-1-1:批量数据切片、线程池分配与任务通道并发限制结构图
⚡ 1. 批处理任务片切算法
在 batch_runner.py 中,面对成百上千条并行任务,系统设计了高效的片切(Partitioning)算法,根据任务的负载和可用硬件线程将其平铺分配到对应的并发队列中。
📊 图 12-1-2:批量并发接口报错捕捉、退避延迟计算与任务通道重试时序图
🚦 2. 线程池并发限流与异常容错
系统通过配置中的并发上限控制 ThreadPoolExecutor 的活动线程数,防止过度的并行对大模型服务端造成压力,同时在线程崩溃时能够自动拉起新线程接管剩余批次。