
批处理,是把多项相似的小工作先组成一组,再共同执行。它不是让每件事本身变简单,而是减少每次都要重复付出的准备、切换和收尾成本。
洗碗机是直观的例子。若每放进一个杯子就启动一次,进水、加热和排水会反复发生;积累到一批再洗,同样的启动过程可以服务许多餐具,单位成本便下降。计算任务、付款和邮件发送也可能采用相同结构。
批处理与缓冲相邻但不同:缓冲只是暂时容纳尚未处理的项目,批处理则规定这些项目怎样被合并执行。它也不是去抖;去抖把连续输入视作一次尚未结束的变化,而批处理仍保留每个项目,只是一起办理。
批次并非越大越好。积累得越久,设备利用率和吞吐量可能越高,单个项目等待的时间却越长。批处理的中心问题因此不是“能否合并”,而是用多长的等待换取多少重复成本的减少。
了解 Geoffrey Chen 的更多信息
订阅后即可通过电子邮件收到最新文章。