w5.4动手⏱ 约 7 分钟
断点续跑:47 节只出了 25 节之后
用一个记录文件让中断不再等于前功尽弃
🔎 最后验证 2026-08📚 来源:本课产线 tomdx.log 撞额度事故留档与产线续跑规则
为什么学这个
5.1 提过我们最疼的一次事故:撞上订阅额度,47 节课只转出 25 节。真正让它从"故障"升级成"事故"的,不是中断本身,而是中断之后已经转好的 25 节没法复用——当时的产线没有续跑能力,只能整体重来。重来一次,就是再赌 47 节全过。
那次之后,产线定下一条规则:长任务必须支持断点续跑——已完成的跳过、失败的重跑,一次限流不能让整条流水线作废。
这一节讲它的原理(简单到不像话)、一个决定成败的设计细节,以及为什么它不是"优化项"而是长任务的入场券。学完这节,本模块的可靠性三件套就齐了,文末有一份验收清单帮你自检。
💡 打个比方
下载一部 8GB 的电影,到 60% 断网了。二十年前的下载工具会让你从 0% 重来;现在的都从 60% 续传。差别就在一件事:它记住了下到哪了。断点续跑就是给你的产线装上这个"记住"。
原理:就两件事
断点续跑的实现简单到不像话:
- 每完成一个单元,立刻记下来。 记在哪无所谓——一个"已完成清单"文件、一行日志、甚至文件名本身(转好的文件存在了,就是完成的证明)。
- 启动时先看记录,跳过已完成的。 重跑时不是从头开始,是从记录里第一个"没做完"的单元开始。
我们产线的做法还多一条:失败留档。runs/ 目录保留每步的输入输出和审核报告——平时不看,出事时全靠它还原现场,像飞机的黑匣子。续跑负责"不白干",留档负责"查得清",两个是配套的。
一个决定成败的设计细节
进度记录必须做完一个记一个,不能"全做完再一起记"。
后者等于没记:任务断在中间时,记录还是空的,续跑无从谈起——你拥有一个续跑机制的外壳,和一条照样前功尽弃的产线。这个细节值得单独强调,因为"最后统一记录"写起来更顺手,是很自然会犯的偷懒。

都看到这了,打个赏呗!
接下来 · w5.5
假绿灯:那根“吞掉报错”的管道
继续读下一节 →