一种服务部署方法及装置、电子设备和存储介质制造方法及图纸

技术编号:30371219 阅读:48 留言:0更新日期:2021-10-16 17:51
本发明专利技术提供一种服务部署方法及装置、电子设备和存储介质。其中,所述方法包括,部署应用集,提取应用集中的服务开发组件及服务依赖配置文件,并提取服务依赖配置文件的依赖开发组件及依赖服务信息;基于服务开发组件和依赖开发组件形成服务依赖组件集合,并基于依赖服务信息形成服务依赖集合;基于服务依赖组件集合和服务依赖集合,生成依赖图谱;基于依赖图谱,部署目标应用服务。本发明专利技术提供的服务部署方法,通过基于生成的依赖图谱,部署目标应用服务,避免了在进行双模应用的服务部署时,需要先梳理依赖关系,然后在部署服务的情况发生,提高了其通用性。提高了其通用性。提高了其通用性。

【技术实现步骤摘要】
一种服务部署方法及装置、电子设备和存储介质


[0001]本专利技术涉及计算机软件
,尤其涉及一种服务部署方法及装置、电子设备和存储介质。

技术介绍

[0002]随着以Docker和CNCF Kubernetes容器化编排平台为代表的云原生技术不断成熟和广泛应用,越来越多的企业应用技术架构开始向云原生技术架构转型,其实质是,应用容器相关技术体系。
[0003]常见的云原生技术架构的应用形态,无论是开发态还是运行态都在不断变化和演进,企业应用开发架构向微服务架构和云原生架构演进的过程中,导致业务应用的交付形态由单一技术栈集中式部署方式演化为多语言多服务分散式异构环境,随着业务应用被拆分为众多细粒度服务,应用内部构成与依赖关系更加复杂。
[0004]上述常见的云原生技术架构的应用形态存在的缺点或不足包括,在双模应用模式下,存在通用性差的问题。

技术实现思路

[0005]针对现有技术中存在的问题,本专利技术的实施例提供一种服务部署方法及装置、电子设备和存储介质。
[0006]本专利技术提供一种服务部署方法,包括:
[0007]部署应用集,提取所述应用集中的服务开发组件及服务依赖配置文件,并提取所述服务依赖配置文件的依赖开发组件及依赖服务信息;
[0008]基于所述服务开发组件和所述依赖开发组件形成服务依赖组件集合,并基于所述依赖服务信息形成服务依赖集合;
[0009]基于所述服务依赖组件集合和所述服务依赖集合,生成依赖图谱;
[0010]基于所述依赖图谱,部署目标应用服务。
[0011]根据本专利技术提供的一种服务部署方法,所述方法还包括:
[0012]判断所述应用集中是否包含所述服务依赖配置文件;
[0013]若所述应用集中包含所述服务依赖配置文件,继续执行提取所述应用集中的所述服务依赖配置文件;
[0014]若所述应用集中不包含所述服务依赖配置文件,结束执行提取所述应用集中的所述服务依赖配置文件。
[0015]根据本专利技术提供的一种服务部署方法,所述基于所述服务开发组件和所述依赖开发组件形成服务依赖组件集合,包括:
[0016]处理所述服务开发组件和所述依赖开发组件,形成开发组件集合;
[0017]创建开发组件映射库,基于所述开发组件映射库,将所述开发组件集合转换为所述服务依赖组件集合。
[0018]根据本专利技术提供的一种服务部署方法,所述基于所述服务依赖组件集合和所述服务依赖集合,生成依赖图谱,包括:
[0019]判断所述服务依赖组件集合是否存在任一服务包含目标组件的多个版本信息;
[0020]若所述服务依赖组件集合中存在任一服务包含目标组件的多个版本信息,确定所述目标组件及其对应的目标版本信息,形成目标组件集合,并聚合所述目标组件集合和所述服务依赖集合,生成服务依赖关系聚类;
[0021]若所述服务依赖组件集合中不存在任一服务包含目标组件的多个版本信息,聚合所述服务依赖组件集合和所述服务依赖集合,生成服务依赖关系聚类;
[0022]基于所述服务依赖关系聚类,生成所述依赖图谱。
[0023]根据本专利技术提供的一种服务部署方法,所述基于所述服务依赖关系聚类,生成所述依赖图谱,包括:
[0024]基于所述服务依赖关系聚类,确定所述应用集中服务依赖的依赖关系,并标识所述服务依赖的依赖冲突和依赖部署顺序;
[0025]基于所述依赖关系、所述依赖冲突和所述依赖部署顺序,生成所述依赖图谱。
[0026]本专利技术还提供一种服务部署装置,包括:
[0027]部署模块,用于部署应用集,提取所述应用集中的服务开发组件及服务依赖配置文件,并提取所述服务依赖配置文件的依赖开发组件及依赖服务信息;
[0028]基础模块,用于基于所述服务开发组件和所述依赖开发组件形成服务依赖组件集合,并基于所述依赖服务信息形成服务依赖集合;
[0029]生成模块,用于基于所述服务依赖组件集合和所述服务依赖集合,生成依赖图谱;
[0030]目标模块,用于基于所述依赖图谱,部署目标应用服务。
[0031]根据本专利技术提供的一种服务部署装置,所述装置还包括:
[0032]判断模块,用于判断所述应用集中是否包含所述服务依赖配置文件;
[0033]提取模块,用于若所述应用集中包含所述服务依赖配置文件,继续执行提取所述应用集中的所述服务依赖配置文件;
[0034]执行模块,用于若所述应用集中不包含所述服务依赖配置文件,结束执行提取所述应用集中的所述服务依赖配置文件。
[0035]根据本专利技术提供的一种服务部署装置,所述基础模块,包括:
[0036]处理子模块,用于处理所述服务开发组件和所述依赖开发组件,形成开发组件集合;
[0037]转换子模块,用于创建开发组件映射库,基于所述开发组件映射库,将所述开发组件集合转换为所述服务依赖组件集合。
[0038]根据本专利技术提供的一种服务部署装置,所述生成模块,包括:
[0039]判断子模块,用于判断所述服务依赖组件集合是否存在任一服务包含目标组件的多个版本信息;
[0040]确定子模块,用于若所述服务依赖组件集合中存在任一服务包含目标组件的多个版本信息,确定所述目标组件及其对应的目标版本信息,形成目标组件集合,并聚合所述目标组件集合和所述服务依赖集合,生成服务依赖关系聚类;
[0041]聚合子模块,用于若所述服务依赖组件集合中不存在任一服务包含目标组件的多
个版本信息,聚合所述服务依赖组件集合和所述服务依赖集合,生成服务依赖关系聚类;
[0042]生成子模块,用于基于所述服务依赖关系聚类,生成所述依赖图谱。
[0043]根据本专利技术提供的一种服务部署装置,所述生成子模块,具体用于:
[0044]基于所述服务依赖关系聚类,确定所述应用集中服务依赖的依赖关系,并标识所述服务依赖的依赖冲突和依赖部署顺序;
[0045]基于所述依赖关系、所述依赖冲突和所述依赖部署顺序,生成所述依赖图谱。
[0046]本专利技术还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述服务部署方法的步骤。
[0047]本专利技术还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述服务部署方法的步骤。
[0048]本专利技术提供的一种服务部署方法及装置、电子设备和存储介质,通过部署应用集,提取应用集中的服务开发组件及服务依赖配置文件,并提取服务依赖配置文件中的依赖开发组件及依赖服务信息;基于服务开发组件和依赖开发组件形成服务依赖组件集合,并基于依赖服务信息形成服务依赖集合;基于服务依赖组件集合和服务依赖集合,生成依赖图谱;基于依赖图谱,部署目标应用服务。本专利技术提供的服务部署方法及装置,通过基于生成的依赖图谱,部署目标应用服务,避免本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种服务部署方法,其特征在于,包括:部署应用集,提取所述应用集中的服务开发组件及服务依赖配置文件,并提取所述服务依赖配置文件的依赖开发组件及依赖服务信息;基于所述服务开发组件和所述依赖开发组件形成服务依赖组件集合,并基于所述依赖服务信息形成服务依赖集合;基于所述服务依赖组件集合和所述服务依赖集合,生成依赖图谱;基于所述依赖图谱,部署目标应用服务。2.根据权利要求1所述的服务部署方法,其特征在于,所述方法还包括:判断所述应用集中是否包含所述服务依赖配置文件;若所述应用集中包含所述服务依赖配置文件,继续执行提取所述应用集中的所述服务依赖配置文件;若所述应用集中不包含所述服务依赖配置文件,结束执行提取所述应用集中的所述服务依赖配置文件。3.根据权利要求1所述的服务部署方法,其特征在于,所述基于所述服务开发组件和所述依赖开发组件形成服务依赖组件集合,包括:处理所述服务开发组件和所述依赖开发组件,形成开发组件集合;创建开发组件映射库,基于所述开发组件映射库,将所述开发组件集合转换为所述服务依赖组件集合。4.根据权利要求1所述的服务部署方法,其特征在于,所述基于所述服务依赖组件集合和所述服务依赖集合,生成依赖图谱,包括:判断所述服务依赖组件集合是否存在任一服务包含目标组件的多个版本信息;若所述服务依赖组件集合中存在任一服务包含目标组件的多个版本信息,确定所述目标组件及其对应的目标版本信息,形成目标组件集合,并聚合所述目标组件集合和所述服务依赖集合,生成服务依赖关系聚类;若所述服务依赖组件集合中不存在任一服务包含目标组件的多个版本信息,聚合所述服务依赖组件集合和所述服务依赖集合,生成服务依赖关系聚类;基于所述服务依赖关系聚类,生成所述依赖图谱。5.根据权利要求4所述的服务部署方法,其特征在于,所述基于所述服务依赖关系聚类,生成所述...

【专利技术属性】
技术研发人员:王乙庚
申请(专利权)人:京东科技控股股份有限公司
类型:发明
国别省市:

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

1