一种基于云函数和BPMN规范的云资源编排方法技术

技术编号:28565129 阅读:43 留言:0更新日期:2021-05-25 18:01
本发明专利技术公开了一种基于云函数和BPMN规范的云资源编排方法包括:BPMN流程引擎解析任务信息,并向云消息服务发布;云消息服务依据任务信息触发启动Lambda云函数服务,选取对应的Lambda函数集;所述Lambda云函数服务将所述Lambda函数集调度到云函数引擎,所述云函数引擎执行云函数以使所述Lambda云函数服务完成任务事件;所述Lambda云函数服务通过所述云消息服务向所述BPMN流程引擎发布所述完成任务事件;所述BPMN流程引擎解析下一任务信息。将执行逻辑与调度逻辑分开,使得流程引擎服务端专注于流程本身的调度逻辑,保持轻量化,基于云函数的执行单元,具备跨语言、高扩展、分布式、异构部署的良好架构特点;面向函数集的研发方式,让研发专注于代码本身,而不必关注代码运行架构,运维实施等问题,提升了研发效率,降低了维护成本。

【技术实现步骤摘要】
一种基于云函数和BPMN规范的云资源编排方法
本专利技术涉及云计算领域,尤其涉及一种基于云函数和BPMN规范的云资源编排方法。
技术介绍
云资源的类型包括有IAAS、PAAS、SAAS及应用层,不同CPU架构、不同虚拟化架构的云资源的调度方式是有所区别的,对云资源交付的编排控制,具有编排对象多样性高、扩展性强、编排过程复杂性强的特点。BPMN(BusinessProcessModelandNotation)是一套用以业务流程模型定义的可视化图形描述方法。由于BPMN是业界非常成熟的业务流程控制规范,使用BPMN规范可以解决云资源编排过程复杂性的问题。通过流程编排云资源部署的先后顺序,以及各类并发、等待、串行、汇聚等,解决部署过程的流程控制问题。流程中节点的业务逻辑的实现,业界通用的方案是通过BPMN规范中定义的各类Task进行逻辑实现的,例如Java服务任务,脚本任务,或者实现创建虚拟机的服务任务类和创建存储卷的服务任务类,当流程引擎解析到创建虚拟机的服务任务类时,会调用对应的实现类,进行逻辑执行,达到创建虚拟机的目的。但是随着云资源的本文档来自技高网...

【技术保护点】
1.一种基于云函数和BPMN规范的云资源编排方法,其特征在于,包括以下步骤:/nS1:BPMN流程引擎解析任务信息,并向云消息服务发布;/nS2:云消息服务依据任务信息触发启动Lambda云函数服务,选取对应的Lambda函数集;/nS3:所述Lambda云函数服务将所述Lambda函数集调度到云函数引擎,所述云函数引擎执行云函数以使所述Lambda云函数服务完成任务事件;/nS4:所述Lambda云函数服务通过所述云消息服务向所述BPMN流程引擎发布所述完成任务事件;/nS5:所述BPMN流程引擎解析下一任务信息。/n

【技术特征摘要】
1.一种基于云函数和BPMN规范的云资源编排方法,其特征在于,包括以下步骤:
S1:BPMN流程引擎解析任务信息,并向云消息服务发布;
S2:云消息服务依据任务信息触发启动Lambda云函数服务,选取对应的Lambda函数集;
S3:所述Lambda云函数服务将所述Lambda函数集调度到云函数引擎,所述云函数引擎执行云函数以使所述Lambda云函数服务完成任务事件;
S4:所述Lambda云函数服务通过所述云消息服务向所述BPMN流程引擎发布所述完成任务事件;
S5:所述BPMN流程引擎解析下一任务信息。


2.如权利要求1的基于云函数和BPMN规范的云资源编排方法,其特征在于:发布任务信息的通讯格式包括有queue队列编号和method触发云函数的方法。


3.如权利要求2的基于云函数和BPMN规范的云资源编排方法,其特征在于,步骤S2还包括有:
根据所述queue队列编号和method触发云函数的方法,选取对应的Lambda函数集。


4.如权利要求1的基于云函数和BPMN规范的云资源编排方法,其特征在于:所述编排方法定义了当编排失败时触发编排回滚的过程,包括以下步骤:
1)云函数服务执行任务失败,通过云消息服务向BPMN流程引擎发布失败状态的事件;
2)所述BPMN流程引擎接收到失败事件后,按流程调度顺序逆向选择上一个任务事件,并将选中任务事件发布到云消息服务。其中,发布任务信息的通讯格式包括有queue队列编号和method触发云函数的方法;method指定为rollback;
云消息服务依据任务信息触发启动Lambda云函数服务,根据所述queue队列编号和method触发云函数的rollback方法,选取对应的回滚Lambda函数集;
3)所述Lambda云函数服务将所述Lambda函数集调度到云函数引擎,所述云函数引擎执行云函数以使所述Lambda云函数服务完成任务事件,云平台释放Lambda实例的计算资源;不同CPU架构,不同虚拟化架构的云资源调度由对应的云函数引擎来执行云函数;
所述Lambda云函数服务通过所述云消息服务向所述BPMN流程引擎发布所述完成任务事件;
4)所述BPMN流程引擎驱动流程逆向解析上一个任务事件,直到完成所有任务事件的回滚驱动。


5.如权利要求1的基于云函数和BPMN规范的云资源编排方法,其特征在于:所述编排方法定义了以编排为单位对编排资源进行删除的过程,包括以下步骤:
S1:BPMN编排引擎接收到删除事件,选择目标流程,逆向解析所述流程的任务事件,并将选中任务事件发布到云消息服务;其中,发布任务信息的通讯格式包括有queue队列编号和method触发云函数的方法;method指定为delete;
S2:云消息服务依据任务信息触发启动Lambda云函数服务,根据所述queue队列编号和method触发云函数的delete方法,选取对应的删除Lambda函数集;
S3:所述Lambda云函数服务将所述Lambda函数集调度到云函数引擎,所述云函数引擎执行云函数以使所述Lambda云函数服务完成任务事件,云平台释放Lambda实例的计算资源;不同CPU架构,不同虚拟化架构的云资源调度由对应的云函数引擎来执行云函数;
S4:所述Lambda云函数服务通过所述云消息服务向所述BPMN流程引擎发布所述完成任务事件;
S5:所述BPMN流程引擎驱动流程逆向解析上一个任务事件,直到完成所有任务事件的删除驱动。


6.如权利要求1的基于云函数和BPMN规范的云资源编排方法,其特征在于:所述编排方法定义了取消正在运行中的流程过程,包括以下步骤:
S1:BPMN编排引擎接收到...

【专利技术属性】
技术研发人员:刘忻黄继承
申请(专利权)人:广州市品高软件股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1