基于FSM的应用发布任务处理方法、装置及电子设备制造方法及图纸

技术编号:34687959 阅读:35 留言:0更新日期:2022-08-27 16:21
本说明书一个或多个实施例公开了一种基于FSM的应用发布任务处理方法、装置及电子设备,包括:基于应用发布平台进行全局抽象,得到不同类型的主资源,每个主资源映射有FSM模板,FSM模板中定义有:主资源的生命周期以及在不同生命周期需要维护的子资源信息。这样,将应用发布流程所涉及的步骤抽象为相互独立的子资源,通过设定的子资源之间的依赖关系及回调函数将其发布流程关联,并通过FSM方式对在相关生命周期下的子资源进行状态切换来实现对子资源中回调函数的调用执行,从而,完成对应用发布任务的处理。进而,实现应用发布的可扩展性及可定制性,提升任务执行时的稳定性,从整体上提升应用发布效率。整体上提升应用发布效率。整体上提升应用发布效率。

【技术实现步骤摘要】
基于FSM的应用发布任务处理方法、装置及电子设备


[0001]本文件涉及云计算
,尤其涉及一种基于FSM的应用发布任务处理方法、装置及电子设备。

技术介绍

[0002]平台即服务(Platform

as

a

Service,PaaS)平台是一种通用的云平台,目前可基于主流的容器技术Docker及Kubernetes(简称K8s)构建实现,具体可通过统一应用管理、异构资源管理和智能运维等关键能力,支撑PaaS产品在混合云多版本形态和异构基础设施下的统一交付运维。
[0003]其中,应用发布管理是PaaS平台核心功能之一,发布的稳定性也直接影响到混合云在行业的产品竞争力。目前应用发布的任务处理是基于业界开源的Argo工作流编排引擎实现,可定制能力和扩展性较弱,同时由于Argo工作流模式是基于容器的任务执行机制,导致运行时的稳定性较差。

技术实现思路

[0004]本说明书一个或多个实施例的目的是提供一种基于FSM的应用发布任务处理方法、装置及电子设备,以提升任务本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于FSM的应用发布任务处理方法,包括:基于监测到的由于任一主资源变化产生的应用发布任务,确定执行所述应用发布任务的目标发布控制器;在所述目标发布控制器中,基于所述应用发布任务携带的所述主资源变化后的资源配置信息,确定触发所述应用发布任务的所述主资源中待执行的生命周期,并基于所述资源配置信息生成FSM实例;基于所述资源配置信息,从所述主资源的至少一个FSM模板中选择与所述应用发布任务相匹配的FSM模板,根据所述FSM模板中定义内容,提取待执行的生命周期下的至少一个子资源;根据所述资源配置信息和所述FSM模板中定义内容,从所述至少一个子资源中确定合法子资源,并基于所述FSM实例,分别对所述合法子资源进行状态切换,直至合法子资源切换完毕,确定执行完成所述应用发布任务;其中,所述主资源是基于应用类型抽象定义的资源对象,所述子资源是基于应用发布过程抽象定义的相互独立的资源对象;每个主资源映射有至少一个FSM模板,每个FSM模板中该主资源的定义内容至少包含:主资源的生命周期以及在不同生命周期需要维护的子资源信息。2.如权利要求1所述的方法,在合法子资源切换完毕之后,所述方法还包括:统计合法子资源的执行结果,计算得到所述主资源的汇总执行结果;其中,所述汇总执行结果用于反映FSM引擎内部执行状态。3.如权利要求2所述的方法,所述汇总执行结果至少包含:主资源类型和主资源状态;在计算得到所述主资源的汇总执行结果之后,所述方法还包括:基于所述汇总执行结果中主资源状态,判断所述应用发布任务是否需要重入队;如果所述主资源状态的状态结果表示已成功处理完所有合法子资源,则不做处理;否则,根据失败的错误类型或所述主资源状态,确定重入队的延迟时间,并在延迟时间到达后将所述应用发布任务重入队。4.如权利要求1

3任一项所述的方法,基于监测到的由于任一主资源变化产生的应用发布任务,确定执行所述应用发布任务的目标发布控制器,包括:基于监测到的应用发布任务,获取触发该应用发布任务的主资源的元数据信息;将所述元数据信息进行哈希计算,使用哈希结果与当前可用的发布控制器的数量取模,得到用于标志发布控制器的标识信息;将所述标识信息对应的发布控制器确定为目标发布控制器。5.如权利要求1

3任一项所述的方法,所述资源配置信息中包含生命周期标识和模板标识;则基于所述应用发布任务携带的所述主资源变化后的资源配置信息,确定触发所述应用发布任务的所述主资源中待执行的生命周期,包括:基于所述应用发布任务携带的资源配置信息中包含的生命周期标识,从生命周期标识与生命周期的映射关系中,比对确定所述应用发布任务待执行的生命周期;基于所述资源配置信息,从所述主资源的至少一个FSM模板中选择与所述应用发布任务相匹配的FSM模板,包括:
基于所述应用发布任务携带的资源配置信息中模板标识,从所述主资源的至少一个FSM模板中选择与所述模板标识对应的FSM模板。6.如权利要求2或3所述的方法,所述资源配置信息中还携带有子资源状态,所述子资源信息至少包括:子资源集合以及子资源之间的依赖关系;根据所述资源配置信息和所述FSM模板中定义内容,从所述至少一个子资源中确定合法子资源,包括:根据所述FSM模板中定义内容所指代的依赖关系,顺序检查所述至少一个子资源的子资源状态;如果子资源状态表示已完成,则确定不满足依赖关系,对该子资源不做处理;如果子资源状态表示未完成,则确定满足依赖关系,该子资源为合法子资源。7.如权利要求6所述的方法,所述FSM实例中携带有所述资源配置信息传递而来的由于资源变化生成的传入参数,所述子资源信息还包括:回调函数;基于所述FSM实例,分别对所述合法子资源进行状态切换,直至合法子资源切换完毕,确定执行完成所述应用发布任务,包括:基于所述FSM实例中携带的传入参数,依次分别对所述合法子资源中每...

【专利技术属性】
技术研发人员:章成飞吴德新肖尚叔
申请(专利权)人:阿里云计算有限公司
类型:发明
国别省市:

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

1