影刀RPA 企业级专题篇:自动化中台架构与多业务流程治理实践

作者:林焱

很多团队最开始做自动化。

目标都很简单。

让流程跑起来。

减少重复操作。

前期。

几个流程。

几台机器。

一个维护人员。

系统看起来非常轻。

但随着业务扩大。

问题会逐渐出现。

例如:

流程越来越多

部门越来越多

节点越来越多

调度越来越复杂

权限越来越混乱

这时候。

很多团队会突然发现:

系统已经开始失控。

因为最开始的架构。

只适合:

“小规模自动化”。

而企业级阶段。

真正要解决的问题。

已经不是:

单个流程。

而是:

整个自动化体系。

这篇文章。

重点聊:

自动化中台与多业务流程治理。

为什么自动化系统后期一定会“平台化”

很多团队前期。

自动化都是项目制。

例如:

某个部门提需求。

开发一个流程。

上线运行。

流程越来越多以后。

问题开始出现。

例如:

在这里插入图片描述

流程重复开发

浏览器资源冲突

调度规则不统一

日志格式混乱

节点权限交叉

这些问题。

本质原因只有一个:

系统没有平台化。

什么是自动化中台

很多人一听“中台”。

就觉得非常重。

实际上。

自动化中台的核心只有一句话:

统一治理。

不是统一页面。

不是统一业务。

而是:

统一系统能力。

例如:

统一调度

统一日志

统一节点

统一权限

统一监控

统一资源治理

这样不同业务流程。

才能运行在同一套体系里。

为什么“流程孤岛”后期特别危险

很多团队做到后面。

都会出现:

流程孤岛。

例如:

A 部门有自己的流程。

B 部门也有自己的流程。

店群矩阵自动化突破运营极限!

大家都在重复:

登录。

采集。

上传。

通知。

最后。

系统越来越混乱。

真正的问题不是:

流程太多。

而是:

在这里插入图片描述

能力没有复用。

一个典型的中台架构

成熟系统里。

通常会逐渐演化成:

业务流程层

自动化编排层

调度中心

执行节点集群

浏览器资源池
这里最关键的。

其实是:

编排层。

因为它负责:

业务与执行解耦。

为什么流程不能直接绑定业务

很多团队最开始。

习惯:

一个业务一个流程。

例如:

订单同步流程。

库存同步流程。

数据采集流程。

前期没问题。

但后期。

流程会越来越重复。

真正成熟的系统。

通常会把:

公共能力抽离。

例如:

登录模块

页面初始化模块

文件上传模块

数据校验模块

不同业务。

共享这些模块。

为什么统一调度越来越重要

业务一多。

任务冲突一定会出现。

例如:

多个流程同时抢浏览器。

多个任务同时占节点。

如果没有统一调度。

系统会越来越混乱。

成熟中台里。

所有任务。

通常都会经过:

统一调度中心。

这样系统才能:

统一分配资源。

一个简单的调度抽象模型
Python
运行
class TaskScheduler:

def dispatch(self, task, worker):
    worker.execute(task)

代码看起来简单。

但真正复杂的是:

后面的策略。

例如:

优先级

节点负载

浏览器数量

队列长度

为什么企业级系统必须做“权限隔离”

很多团队前期。

所有流程共用环境。

后期会非常危险。

因为:

不同业务。

权限不同。

数据不同。

资源不同。

所以成熟系统里。

一定会做:

隔离。

包括:

节点隔离

账号隔离

浏览器隔离

日志隔离

任务隔离

这不是复杂化。

而是:

稳定化。

为什么浏览器资源必须统一管理

很多系统前期。

浏览器是自由启动的。

结果后期。

资源会迅速混乱。

例如:

某节点浏览器爆满

某节点长期空闲

Chromium 残留堆积

所以成熟系统里。

浏览器通常都会进入:

统一资源池。

由调度器统一分配。

为什么企业级系统越来越重视“标准化”

自动化平台做到后面。

最大的难点之一。

其实是:

在这里插入图片描述

不可维护。

例如:

每个人日志格式不同。

每个人异常处理不同。

每个人命名风格不同。

最后:

系统无法统一治理。

所以成熟团队。

一定会建立:

标准化体系。

包括:

日志标准

异常标准

状态标准

调度标准

命名标准

一个真实的线上问题

之前有批流程。

全部由不同开发人员维护。

结果:

日志格式完全不同。

出了问题以后。

排查极其困难。

后来统一日志结构后。

问题定位效率提升非常明显。

为什么中台后期越来越像“操作系统”

做到后面。

自动化平台会越来越像:

轻量操作系统。

因为:

它开始负责:

任务管理

资源管理

状态管理

权限管理

节点管理

这些能力。

已经不是简单脚本。

而是:

系统治理能力。

为什么多业务环境必须做“资源配额”

真实企业环境里。

不同业务重要程度不同。

如果资源完全共享。

容易出现:

在这里插入图片描述

资源抢占。

例如:

低优先级流程。

抢占大量浏览器。

导致核心任务延迟。

所以成熟系统里。

通常会做:

资源配额。

例如:

temu店群自动化报活动案例

业务A:
最大10浏览器

业务B:
最大5浏览器

这样系统会稳定很多。

为什么自动化中台一定会进入“服务化”

很多团队做到后面。

流程已经不再只是流程。

而变成:

服务能力。

例如:

登录服务。

截图服务。

文件处理服务。

其他流程直接调用。

这其实已经接近:

服务化架构。

为什么系统治理能力比流程数量更重要

很多人喜欢比:

做了多少流程。

但真正成熟团队。

更关注:

系统是否稳定。

因为:

流程数量不代表工程能力。

真正重要的是:

系统是否可维护。

可治理。

可恢复。

影刀真正适合的位置

影刀依然适合:

执行层。

例如:

页面操作。

规则化执行。

表单交互。

但企业级治理。

在这里插入图片描述

调度。

权限。

资源控制。

更适合放在:

Python 控制层。

典型结构:

Python(中台治理)

Redis(状态同步)

影刀(执行)

Chromium(运行环境)
写在最后

很多人最开始做自动化。

关注的是:

流程会不会运行。

但真正进入企业级阶段以后。

问题会逐渐变成:

系统是否还能继续管理。

因为:

流程会增长。

节点会增长。

业务会增长。

最终:

复杂度一定会增长。

自动化中台真正解决的。

不是“流程开发”。

而是:

复杂度治理。

统一调度。

统一资源。

统一监控。

统一状态。

这些。

才是企业级自动化真正的核心。

下一篇专栏。

准备继续聊:

《影刀RPA 企业级专题篇:多租户自动化平台与账号环境隔离设计》。

会深入拆解:

多租户架构

环境隔离

浏览器Profile治理

权限控制

资源隔离

执行沙箱

租户级调度

企业级安全治理

作者:林焱

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐