数据处理方法、装置、设备及可读存储介质与流程

文档序号:37269499发布日期:2024-03-12 20:57阅读:14来源:国知局
数据处理方法、装置、设备及可读存储介质与流程

本技术涉及计算机,尤其涉及一种数据处理方法、装置、设备及可读存储介质。


背景技术:

1、工作流引擎是一种通过可视化拖拽编程的方式来设计流程,降低学习门槛,提高效率的低代码技术。通过这种低代码的技术来实现编程中的各种代码特性,例如条件判断、并发等功能。以低代码的方式降低编程开发成本,让普通没有编程经验的人都可以通过可视化编程来实现各种流程特性。

2、但是目前绝大部分的工作流引擎仅支持简单的串行执行,即每个应用模块(app)仅支持执行一次。对于一些数组或列表循环遍历操作的场景,则无法支持,导致工作流引擎的易用性和功能性大大降低。


技术实现思路

1、本技术实施例提供了一种数据处理方法、装置、设备及可读存储介质,可以提高工作流引擎的易用性和功能性。

2、本技术实施例一方面提供了一种数据处理方法,包括:

3、接收针对目标工作流的触发请求,创建目标工作流对应的执行实例;执行实例包括用于描述目标工作流包含的至少两个功能代码块之间的指向关系;至少两个功能代码块包括循环起始功能代码块和循环结束功能代码块;

4、创建循环起始功能代码块对应的循环起始功能块实例,将循环起始功能块实例推送至功能块实例队列中,当功能块实例队列中的循环起始功能块实例执行成功时,获取循环起始功能代码块对应的循环参数;功能块实例队列中的功能块实例将顺序被执行;

5、根据指向关系确定循环起始功能代码块与循环结束功能代码块之间的功能代码块,作为循环功能代码块;

6、根据循环参数、功能块实例队列以及指向关系,循环执行循环功能代码块。

7、本技术实施例一方面提供了一种数据处理方法,包括:

8、响应针对目标工作流的创建操作,显示工作流编辑页面;

9、响应针对至少两个功能块控件的选择连线操作,在工作流编辑页面显示由至少两个功能块控件构成的工作流控件树;至少两个功能块控件包括循环起始功能块控件和循环结束功能块控件;

10、响应针对工作流控件树中的循环起始功能块控件的触发操作,显示循环编辑文本框,响应针对循环编辑文本框的输入操作,为循环起始功能块控件设置循环参数;

11、响应针对工作流控件树的创建操作,创建目标工作流,将目标工作流发送至工作流引擎;目标工作流包含至少两个功能块控件分别对应的功能代码块;至少两个功能代码块之间的指向关系是根据至少两个功能块控件的连接关系所确定的;至少两个功能代码块包括循环起始功能块控件对应的循环起始功能代码块和循环结束功能块控件对应的循环结束功能代码块;

12、响应针对目标工作流的触发操作,将针对目标工作流的触发请求发送至工作流引擎,以使工作流引擎创建目标工作流对应的执行实例;循环参数以及指向关系共同用于在执行该执行实例的过程中,指示循环起始功能代码块与循环结束功能代码块之间的功能代码块进行循环执行。

13、本技术实施例一方面提供了一种数据处理装置,包括:

14、触发模块,用于接收针对目标工作流的触发请求,创建目标工作流对应的执行实例;执行实例包括用于描述目标工作流包含的至少两个功能代码块之间的指向关系;至少两个功能代码块包括循环起始功能代码块和循环结束功能代码块;

15、循环起始模块,用于创建循环起始功能代码块对应的循环起始功能块实例,将循环起始功能块实例推送至功能块实例队列中,当功能块实例队列中的循环起始功能块实例执行成功时,获取循环起始功能代码块对应的循环参数;功能块实例队列中的功能块实例将顺序被执行;

16、循环确认模块,用于根据指向关系确定循环起始功能代码块与循环结束功能代码块之间的功能代码块,作为循环功能代码块;

17、循环执行模块,用于根据循环参数、功能块实例队列以及指向关系,循环执行循环功能代码块。

18、其中,循环参数为n,n为大于或等于1的正整数;

19、循环执行模块,包括:

20、第一迭代单元,用于在针对循环功能代码块进行的第k轮迭代执行过程中,根据指向关系确定循环起始功能代码块所指向的待执行功能代码块列表;k为小于或等于n的正整数;

21、第一迭代单元,还用于若待执行功能代码块列表中不包含循环结束功能代码块,且功能块实例队列中目标待执行功能代码块对应的目标待执行功能块实例执行成功,则继续根据指向关系确定目标待执行功能代码块所指向的新的待执行功能代码块列表,直至确定针对循环功能代码块进行的第k轮迭代执行完成;目标待执行功能代码块为待执行功能代码块列表中的功能代码块;

22、第二迭代单元,用于若k小于n,则继续针对循环功能代码块进行第k+1轮迭代执行。

23、其中,上述数据处理装置,还包括:

24、第三迭代模块,用于若新的待执行功能代码块列表中包含循环结束功能代码块,则查询循环结束功能块实例队列,若循环结束功能块实例队列为空队列,则将循环结束功能代码块对应的循环结束功能块实例推送至循环结束功能块实例队列中;

25、第三迭代模块,还用于若检测到执行实例的执行数据满足执行结束条件,则确定针对循环功能代码块进行的第k轮迭代执行完成;

26、推送模块,用于当确定针对循环功能代码块进行的第n轮迭代执行完成时,将循环结束功能块实例队列中的循环结束功能块实例推送至功能块实例队列中,继续检测执行实例的新的执行数据;

27、第一检测模块,用于若检测到新的执行数据满足执行结束条件,且循环结束功能块实例队列为空队列,则确定至少两个功能代码块执行完成。

28、其中,执行数据包括队列实例数量和实例执行数量;

29、上述数据处理装置,还包括:

30、数据初始化模块,用于在创建执行实例的同时,初始化队列实例数量为默认参数,初始化实例执行数量为默认参数;

31、第一数据更新模块,用于根据与执行实例相关联的功能块实例的执行状态,对队列实例数量进行累加处理或递减处理,对实例执行数量进行累加处理或递减处理;

32、第二检测模块,用于若检测到队列实例数量等于默认参数,实例执行数量等于默认参数,则确定检测到执行实例的执行数据满足执行结束条件。

33、其中,与执行实例相关联的功能块实例包括目标功能块实例;

34、第一数据更新模块,包括:

35、第一更新单元,用于当目标功能块实例被推送至功能块实例队列中时,对队列实例数据进行累加处理;

36、第二更新单元,用于当执行功能块实例队列中的目标功能块实例时,对实例执行数量进行默认累加处理,对队列实例数量进行默认递减处理。

37、其中,上述数据处理装置,还包括:

38、第二数据更新模块,用于当目标功能块实例执行完成时,确定新的目标功能块实例的创建情况;

39、第二数据更新模块,还用于若新的目标功能块实例创建成功,且新的目标功能块实例对应的功能代码块为循环结束功能代码块,则对执行实例数量进行默认递减处理;

40、第二数据更新模块,还用于若新的目标功能块实例创建成功,且新的目标功能块实例对应的功能代码块不为循环结束功能代码块,则在新的目标功能块实例推送至功能块实例队列后,根据新的目标功能块实例的数量对队列实例数量进行累加处理,对执行实例数量进行默认递减处理;

41、第二数据更新模块,还用于若新的目标功能块实例创建失败,则对执行实例数量进行默认递减处理。

42、其中,上述数据处理装置,还包括:

43、表创建模块,用于在创建目标工作流对应的执行实例的同时,创建执行实例对应的执行实例表;执行实例表用于记录执行实例的执行情况;

44、实例获取模块,用于顺序获取功能块实例队列中与执行实例相关联的第一个功能块实例,作为待处理功能块实例;待处理功能块实例对应有待处理功能块实例标识和待处理功能块实例索引;待处理功能块实例标识和待处理功能块实例索引是根据待处理功能代码块创建待处理功能块实例时所生成的;目标功能块实例索引用于表征待处理功能代码块的执行次数;待处理功能代码块属于至少两个功能代码块;

45、实例执行模块,用于执行待处理功能块实例,得到目标执行结果;

46、表记录模块,用于根据待处理功能块实例标识和待处理功能块实例索引,在执行实例表中记录目标执行结果。

47、其中,待处理功能块实例包含有需求数据获取路径;

48、实例执行模块,包括:

49、容器确定单元,用于查询执行引擎容器的计算资源空闲情况,确定计算资源空闲最多的执行引擎容器作为目标执行引擎容器;

50、容器执行单元,用于将待处理功能块实例从功能块实例队列中转移至目标执行引擎容器,在目标执行引擎容器中根据需求数据获取路径获取需求数据,根据需求数据执行待处理功能块实例,得到目标执行结果。

51、其中,上述数据处理装置,还包括:

52、标识确定模块,用于当创建待处理功能代码块对应的待处理功能块实例时,获取用于唯一标识待处理功能代码块的标识,作为待处理功能块实例对应的待处理功能块实例标识;

53、索引确定模块,用于若未在执行实例表中查找到待处理功能块实例标识,则确定待处理功能块实例索引为默认索引;

54、索引确定模块,还用于若在执行实例表中查找到待处理功能块实例标识,则获取与待处理功能块实例标识关联的记录时间最晚的历史索引,对历史索引进行累加处理,得到待处理功能块实例索引。

55、其中,触发请求包括网页回调触发请求;

56、触发模块,包括:

57、第一触发单元,用于接收针对目标工作流的网页回调触发请求,从网页回调触发请求中获取目标令牌;

58、第一触发单元,还用于根据目标令牌在工作流存储库中获取目标工作流;

59、第一触发单元,还用于根据网页回调触发请求中包含的请求参数,创建目标工作流对应的执行实例。

60、其中,触发请求包括指令请求;

61、触发模块,包括:

62、第二触发单元,用于通过回调地址获取第一对象发送的指令请求,对指令请求进行解密,得到触发指令以及触发参数;

63、第二触发单元,还用于根据触发指令获取目标工作流,根据触发参数验证第一对象的触发权限;

64、第二触发单元,还用于若第一对象的触发权限为合格权限,则创建目标工作流对应的执行实例。

65、其中,触发请求包括定时器触发请求;

66、触发模块,包括:

67、第三触发单元,用于接收针对目标工作流的定时器触发请求,从定时器触发请求中获取指定执行时间;

68、第三触发单元,还用于当系统时间与指定执行时间相同时,创建目标工作流对应的执行实例。

69、本技术实施例一方面提供了一种的数据处理装置,包括:

70、第一响应模块,用于响应针对目标工作流的创建操作,显示工作流编辑页面;

71、第二响应模块,用于响应针对至少两个功能块控件的选择连线操作,在工作流编辑页面显示由至少两个功能块控件构成的工作流控件树;至少两个功能块控件包括循环起始功能块控件和循环结束功能块控件;

72、第三响应模块,用于响应针对工作流控件树中的循环起始功能块控件的触发操作,显示循环编辑文本框,响应针对循环编辑文本框的输入操作,为循环起始功能块控件设置循环参数;

73、第四响应模块,用于响应针对工作流控件树的创建操作,创建目标工作流,将目标工作流发送至工作流引擎;目标工作流包含至少两个功能块控件分别对应的功能代码块;至少两个功能代码块之间的指向关系是根据至少两个功能块控件的连接关系所确定的;至少两个功能代码块包括循环起始功能块控件对应的循环起始功能代码块和循环结束功能块控件对应的循环结束功能代码块;

74、第五响应模块,用于响应针对目标工作流的触发操作,将针对目标工作流的触发请求发送至工作流引擎,以使工作流引擎创建目标工作流对应的执行实例;循环参数以及指向关系共同用于在执行该执行实例的过程中,指示循环起始功能代码块与循环结束功能代码块之间的功能代码块进行循环执行。

75、本技术实施例一方面提供了一种计算机设备,包括:处理器、存储器、网络接口;

76、上述处理器与上述存储器、上述网络接口相连,其中,上述网络接口用于提供数据通信网元,上述存储器用于存储计算机程序,上述处理器用于调用上述计算机程序,以执行本技术实施例中的方法。

77、本技术实施例一方面提供了一种计算机可读存储介质,上述计算机可读存储介质中存储有计算机程序,上述计算机程序适于由处理器加载并执行本技术实施例中的方法。

78、本技术实施例一方面提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本技术实施例中的方法。

79、本技术实施例中,接收针对目标工作流的触发请求时,会创建目标工作流对应的执行实例,该执行实例包括拥有描述目标工作流包含的至少两个功能代码块之间的指向关系,至少两个功能代码块中包括循环起始功能代码块和循环结束功能代码块;然后,创建循环起始功能代码块对应的循环起始功能块实例,将循环起始功能块实例推送至功能块实例队列中,当功能块实例队列中的循环起始功能块实例执行成功时,获取循环起始功能代码块对应的循环参数,并根据指向关系确定循环起始功能代码块与循环结束功能代码块之间的功能代码块,作为循环功能代码块;最后根据循环参数、功能块实例队列以及指向关系,循环执行循环功能代码块。其中,功能块实例队列中的功能块实例将顺序被执行。由此可见,对象在通过工作流引擎创建工作流时,针对想要多次执行的功能代码块,只需将其放入循环起始功能代码块与循环结束功能代码块之间即可,对象无需具备其他的编程经验,降低了工作流引擎的使用门槛,提高了工作流引擎的易用性和功能性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1