寓言
两家面馆都在煮了就走,但换槽和退碗的规矩不一样
城里有两家汤面馆,都说自己会把客人的面单合在一锅里煮。老客一听觉得差不多,反正都是攒几碗一起下锅,省火、省水、省人手。直到赶集日客人排到巷口,两家馆子的差别才露出来。
南馆的灶台一直开着。第一批面还没完全出锅,后厨就把新来的小碗面塞进空出的竹篓里;有客人吃得快,竹篓腾出来,下一碗马上补进去。锅里始终有面在煮,灶火不等整锅清空才接下一轮。
北馆也会看队伍长短来凑锅。掌柜发现来了十个客人,就把十碗凑成一锅;下一批客人来得慢,就少凑几碗开锅。它的组批会随到客节奏变化,但每一锅仍是一锅一锅地起落。
一个外地老板来考察,听两家都说“动态”,差点签错合同。南馆师傅把竹篓举起来给他看:这里的关键是锅在运行时不断补位,老面和新面可以交错存在。北馆掌柜说:我的关键是开锅前按当下队伍凑批,开了锅就按这一批走完。
当天午后来了个急单。南馆刚有一个竹篓腾空,急单立刻补进去,虽然旁边还有几碗老单没出。北馆要等当前一锅出完,才把急单放到下一锅里。急单等得更久,但每一锅的账更整齐。
商会后来改了登记册:连续批处理强调运行中持续补位,让槽位随生成结束逐步释放;动态组批强调按请求到达情况临时凑批,可以在开批前调大小。两个词有重叠,但不能把“开批前凑批”和“运行中补位”混成一件事。
从那以后,采购推理引擎的人都会问三句话:新请求能不能插进正在运行的队列?已完成的槽位能不能立刻释放?批次大小是在开批前决定,还是运行中持续变化?三句问完,谁在卖哪种灶台就清楚了。
后来外地老板把两家灶台都买回去试跑,账本才真正说话:南馆那套在零散客流里少空锅,北馆那套在整批外卖里更好算账。术语相近,适合的生意并不相同。