关于状态机( state machines)
UiPath Studio 有 3 种类型的流程:序列(sequence),流程图(flowchart) 和 状态机(state machine)
框架包含了全部 3 种流程类型,我们选择了状态机作为 main 程序的主体,因为它提供了一种清晰的解决方案去表示我们所需的数据流。
维基百科就是这样定义有限状态机的:
“有限状态机(FSM)或有限状态机(FSA,复数:automata)、有限自动机或简单的状态机是计算的数学模型。它是一个抽象的机器,在任何给定的时间内都可以处于有限个状态中的一个。FSM 可以根据一些外部输入从一个状态更改为另一个状态;从一个状态更改为另一个状态称为转换。FSM 由其状态列表、初始状态和每个转换的条件定义。”
状态机的基本规则:
由于系统一次只能处于一个状态,因此, 从给定状态到另一个状态的至少一个转换条件必须通过在状态内部运行的代码中生成条件、外部条件或两者的组合而变为真。
每个状态转换都是可执行的(两个转换不能同时满足条件,因此允许两个可能的状态退出路径)
另一个达成一致的规则是,在转换操作中不必进行繁重的处理。所有处理都应该在状态内部完成。
正如第一章所述,我们需要用这个模板解决的问题是:
- 存储和读取项目配置数据
- 分离IT资源开始、使用和结束
a. 对于所有重试的事务,重新启动IT资源 - 实现一个健壮的异常处理和事务重试方案
a. 根据异常类型捕获异常
b. 根据不用的异常类型来重试因应用程序异常而失败的事务 - 捕获并传输所有异常和相关事务信息的日志记录
注: 版权所有,未经允许,不得以任何形式(包括但不限于公众号、简书)的转载