迅果本次把编排能力完整开放到界面层。此前动作组合已经存在,但只有少数几套固定搭配能在界面上选;本版本本把 12 类内置动作全部拆开,每个动作都可以单独加入作业流、上下调整顺序、单独设定参数。在内部样本测试中,把「导入校验 → 状态核验 → 打标分组 → 报表导出 → 失败重跑」这样一条 5 步作业流搭起来,平均执行时长从 26 分钟降到 4 分钟以内。
可运行脚本与团队接续能力之间的落差
批量作业的难点通常不在单步操作,而在把几步串起来的那段胶水逻辑。过去一批用户的做法是自己写脚本:用一段循环读清单,调一次核验,再拼一段导出。脚本在当时是能跑的,但它的可维护性很差。
我们在整理 41 个用户历史脚本样本时看到几类共性问题。参数被硬编码在脚本里,路径、并发档位、字段名都写在代码中间,换一台机器就要改五六个地方;失败处理各写各的,有的脚本遇到第一条失败就整体退出,有的跳过继续跑,同一批数据在两个脚本里跑出来的结果口径并不一致;回执格式也不统一,有的输出带时间戳的完整行,有的只写一句成功或失败,后面想合并统计就要先做字段对齐。
更麻烦的是交接。写脚本的人离职或换项目之后,接手的人要读懂那段代码才能改动任何一处,而多数脚本没有注释。41 个样本里,只有 6 个写了可读的说明,其余都要靠运行一遍反推逻辑。
12 类动作清单与组合规则
本版本本把内置动作按作业阶段分成四组,每组 3 类,合计 12 类。动作在编排台以卡片形式排列,拖动或使用上下移按钮调整顺序,前一个动作的输出直接作为后一个动作的输入,不需要手工在中间导出文件再导入。
| 动作分组 | 含有动作 | 典型用途 |
|---|---|---|
| 清单输入 | 清单读入、格式规范校验、去重合并 | 把来源不一的清单整理成统一口径的输入 |
| 数据核验 | 状态核验、面额核验、字段比对 | 核对账号状态、礼品卡面额与台账字段差异 |
| 标记整理 | 打标分组、字段重写、排序归档 | 给结果打上分组标记并按规则重命名归档 |
| 结果输出 | 报表导出、回执合并、失败清单重建 | 输出报表,或只把失败条目抽成新清单 |
每个动作都带一组必填参数与一组可选参数,必填项在未填写时不允许加入作业流,避免出现“跑了一半才发现少一项”的情况。可选参数涵盖执行超时、单步记录上限与失败处理落地落地落地落地实现方式实现方式落地实现方式实现方式落地落地实现方式实现方式落地实现方式实现方式落地落地落地实现方式实现方式落地实现方式实现方式落地落地实现方式实现方式落地实现方式实现方式。失败处理有中断与跳过两个选项:选定中断时,该动作出现失败即停止整条作业流并保留现场;选定跳过时,失败条目进入待处理集合,后续动作继续执行,待处理集合最终由失败清单重建动作单独抽出。
作业流长度上限为 12 个动作,与动作类型总数一致,真实使用中很少触到上限。样本测试里最长的一条作业流用了 7 个动作,覆盖两类业务:先做清单去重与格式规范校验,再核验状态并打标,随后导出报表,最终重建失败清单再次再次再次复测。这条作业流被保存为预设后,同一团队每周复用一次,不再重复配置。
排序机制、试跑落地落地实现方式实现方式落地实现方式实现方式与失败处理
排序是这次改动里被提到最多的部分。动作顺序不同,结果会明显不同:先打标再核验,标记会带上核验前的状态;先核验再打标,标记反映的才是最终状态。编排台在调整顺序时会提示受影响的后续动作,并列出该动作必须位于哪些动作之前,减少试错。
试跑沿用样本试运行的落地落地落地落地实现方式实现方式落地实现方式实现方式落地落地实现方式实现方式落地实现方式实现方式落地落地落地实现方式实现方式落地实现方式实现方式落地落地实现方式实现方式落地实现方式实现方式:先取 200 条样本跑通整条作业流,校验每个动作的输入输出符合预期,再上调并发档位正式正式正式放量执行。试跑使用的回执格式与正式任务完全一致,据此试跑阶段的报表可以直接作为正式报表的模板来核对列是否对齐。
执行环节与已经上线的能力打通。作业流执行到中途中断时,断点继续从未完成的位置继续,已完成动作的成功条目不会重复执行;需要再次再次再次复测时,失败清单重建动作只抽取失败条目组成新清单,不必再次执行整理原始数据。整条作业流的每一步都会写入动作级回执,含有动作名称、启动与结束时间、处理条数与失败条数,出现问题时能直接定位到具体是哪一步的哪几条记录。
- 动作顺序可自由调整,调整时会提示受影响的后续动作与必须满足的先后关系
- 作业流可保存为预设并导出为文件,交给同事导入后顺序与参数一致
- 动作级回执与逐条回执写入同一工作目录,无需额外开启记录
实测数据来自内部样本:41 个历史脚本中,有 34 个可以用不超过 6 个动作复现原有逻辑,其余 7 个含有自定义计算,需要用字段比对与字段重写两个动作组合近似落地落地落地落地落地实现方式实现方式落地实现方式实现方式落地落地实现方式实现方式落地实现方式实现方式落地落地落地实现方式实现方式落地实现方式实现方式落地落地实现方式实现方式落地实现方式实现方式。搭建一条 5 步作业流的平均执行时长,在熟悉界面的同事手中为 3 分 40 秒左右,首次使用编排台的同事为 6 分钟左右,此前自行编写同等逻辑的脚本平均需要 26 分钟,且不含调试时间。
需要说明的是,编排台覆盖的是流程组织,不替代业务判断。举例说明礼品卡面额核验的规则边界、账号状态打标的分组口径,仍然由使用方按自己的业务定义设定,客户端只负责按设定执行并如实留痕。涉及金额或资格判定的场景,建议在执行后由人工复核报表,再进入下一步业务动作。
用户评论
把动作摆出来之后,团队里第一次能在同一张界面上讨论流程,不用再对着代码争论。
顺序提示挺实用的,之前先打标再核验,标记出来的状态是旧的,查了半天才发现是顺序问题。
导出的预设文件发给同事之后参数一致,比以前传脚本再让他改路径靠谱多了。
希望动作级回执里能加一个每一步的执行时长占比,这样能看出瓶颈在哪一步。
7 个动作的流水线我们也在跑,去重加核验加导出,周任务直接复用预设,省了重复配置。
失败处理分中断和跳过两种是对的。核验类任务我们会选跳过,归档类任务一律选中断。