1、andflow引擎
andflow_js可以实现在Html端设计流程,并将设计结果保存为json模型,andflow可以用于设计业务流程、数据处理流程、工作流、控制流等一切可流程化的过程。
由于golang具备高效、跨平台、并且还能够直接编译成可执行文件,这些优势让我们在第一个andflow引擎开发中优先选择golang。
2、设计思路
- andflow执行引擎的设计,主要考虑了以下几点思路:
- 实现流程的异步执行并兼顾同步控制:更多采纳了golang chan 的特性,为所有节点和连接线创建执行队列,提高并行执行效率。
- 支持开发人员自定义节点执行器:针对不同的节点类型,通过实现节点执行接口、注册自定义节点执行器。
- 支持中断与继续执行:在非异常中断后只需要保留运行时信息,可以在下次继续从中断处继续执行。
- 自带javaScript脚本引擎的通用节点执行器:基于js脚本引擎,实现在流程设计的节点中配置执行脚本。脚本可以在执行流程过程中被执行。
3、一个例子
例子主要执行流程,并在节点中实现
json文件《4执行脚本.json》
{
"code