一种容器处理方法、装置、设备、存储介质及程序产品制造方法及图纸

技术编号:38718688 阅读:11 留言:0更新日期:2023-09-08 15:01
本申请提供了一种容器处理方法、装置、设备、存储介质及程序产品,应用于云技术、大数据、信息推荐和视频领域等容器处理场景中;该容器处理方法包括:响应于函数容器创建请求,基于函数调用关系,获取与请求函数对应的目标函数树,目标函数树为请求函数的全量函数容器所运行的至少一个虚拟机的树形结构;从目标函数树中确定待创建设备的待访问虚拟机,读取待访问虚拟机的待访问地址,待创建设备包括对请求函数进行容器创建的虚拟机;向待创建设备发送待访问地址,以使待创建设备中的虚拟机从待访问地址中获取目标函数容器镜像,并基于目标函数容器镜像创建请求函数对应的目标函数容器。通过本申请,能够提升函数容器创建效率。能够提升函数容器创建效率。能够提升函数容器创建效率。

【技术实现步骤摘要】
一种容器处理方法、装置、设备、存储介质及程序产品


[0001]本申请涉及云计算领域中的容器处理技术,尤其涉及一种容器处理方法、装置、设备、存储介质及程序产品。

技术介绍

[0002]在基于函数进行容器处理的过程中,常常采用集中式存储方式;也就是说,采用一台专用服务器存储函数容器镜像,如此,在函数容器创建时存在数据获取效率问题,也就影响了容器创建效率。

技术实现思路

[0003]本申请实施例提供一种容器处理方法、装置、设备、存储介质及程序产品,能够提升函数容器创建效率。
[0004]本申请实施例的技术方案是这样实现的:本申请实施例提供一种容器处理方法,所述容器处理方法包括:响应于函数容器创建请求,基于函数调用关系,获取与请求函数对应的目标函数树,其中,所述函数容器创建请求用于请求对所述请求函数进行容器创建,所述目标函数树为所述请求函数的全量函数容器所运行的至少一个虚拟机的树形结构,所述请求函数为业务应用中的任一运算功能程序;从所述目标函数树中确定待创建设备的待访问虚拟机,读取所述待访问虚拟机的待访问地址,其中,所述待创建设备包括对所述请求函数进行容器创建的虚拟机;向所述待创建设备发送所述待访问地址,以使所述待创建设备中的虚拟机从所述待访问地址中获取目标函数容器镜像,并基于所述目标函数容器镜像创建所述请求函数对应的目标函数容器。
[0005]本申请实施例还提供了一种容器处理方法,所述容器处理方法包括:接收请求响应设备发送的待访问地址,其中,所述待访问地址为所述请求响应设备基于目标函数树获取的待创建设备的待访问虚拟机的地址,所述目标函数树为所述请求响应设备基于函数调用关系获得的,且所述目标函数树为请求函数的全量函数容器所运行的至少一个虚拟机的树形结构,所述请求函数为函数容器创建请求所请求创建容器的函数,且所述请求函数为业务应用中的任一运算功能程序,所述待创建设备包括对所述请求函数进行容器创建的虚拟机;从所述待访问地址中,获取与所述请求函数对应的目标函数容器镜像;基于所述目标函数容器镜像,创建所述请求函数对应的目标函数容器。
[0006]本申请实施例提供一种第一容器处理装置,所述第一容器处理装置包括:信息确定模块,用于响应于函数容器创建请求,基于函数调用关系,获取与请求函数对应的目标函数树,其中,所述函数容器创建请求用于请求对所述请求函数进行容器创建,所述目标函数树为所述请求函数的全量函数容器所运行的至少一个虚拟机的树形结
构,所述请求函数为业务应用中的任一运算功能程序;地址获取模块,用于从所述目标函数树中确定待创建设备的待访问虚拟机,读取所述待访问虚拟机的待访问地址,其中,所述待创建设备包括对所述请求函数进行容器创建的虚拟机;地址发送模块,用于向所述待创建设备发送所述待访问地址,以使所述待创建设备中的虚拟机从所述待访问地址中获取目标函数容器镜像,并基于所述目标函数容器镜像创建所述请求函数对应的目标函数容器。
[0007]在本申请实施例中,第一容器处理装置还包括关系构建模块,用于响应于所述请求函数的首次创建请求,确定基础虚拟机;向所述基础虚拟机发送镜像获取指示,其中,所述镜像获取指示用于指示所述基础虚拟机从函数容器镜像库中获取基础函数容器镜像,所述函数容器镜像库用于存储待部署函数的待部署函数容器镜像,所述待部署函数容器镜像是在响应于函数部署请求时针对所述待部署函数生成的函数容器镜像;基于所述基础虚拟机针对所述镜像获取指示发送的获取完成信息,将所述基础虚拟机确定为目标根节点;基于所述目标根节点构建所述目标函数树;将所述请求函数与所述目标函数树进行对应存储,得到所述函数调用关系。
[0008]在本申请实施例中,第一容器处理装置还包括请求响应模块,用于响应于所述请求函数的当前创建请求,获取所述请求函数的容器镜像状态;当所述容器镜像状态为冷启动状态时,确定所述当前创建请求为所述首次创建请求。
[0009]在本申请实施例中,所述关系构建模块,还用于将所述容器镜像状态更新为缓存状态,其中,所述缓存状态表示所述虚拟机中包括所述基础函数容器镜像。
[0010]在本申请实施例中,所述关系构建模块,还用于当所述目标函数树中的每个所述虚拟机均处于服务响应状态、且活动虚拟机库的活动虚拟机数量低于虚拟机数量阈值时,从空闲虚拟机库中选择所述待创建设备;将所述待创建设备更新至所述目标函数树中,得到更新后的目标函数树;基于所述更新后的目标函数树,更新所述函数调用关系。
[0011]在本申请实施例中,所述目标函数树为M叉树,M为正整数;所述关系构建模块,还用于从所述目标函数树对应的待插入节点序列中,选择目标待插入节点,其中,所述待插入节点序列包括所述目标函数树中子节点数量小于M的全量节点;将所述待创建设备确定为所述目标函数树中所述目标待插入节点的子节点,得到所述更新后的目标函数树。
[0012]在本申请实施例中,所述关系构建模块,还用于获取所述虚拟机所运行的函数容器的数量;将所述函数容器的数量小于容器数量阈值的所述虚拟机,确定为活动虚拟机;将所述活动虚拟机存储至所述活动虚拟机库中。
[0013]在本申请实施例中,所述关系构建模块,还用于从所述目标函数树中确定待删除虚拟机;响应于将所述待删除虚拟机从所述目标函数树中的删除操作,得到当前函数树;获取所述当前函数树的平衡因子,其中,所述平衡因子表示所述当前函数树的左右子树高度差;当所述当前函数树的平衡因子大于平衡阈值时,旋转所述当前函数树的子树,得到平衡树结构,其中,所述平衡树结构的平衡因子小于或等于所述平衡阈值。
[0014]本申请实施例提供一种第二容器处理装置,所述第二容器处理装置包括:地址接收模块,用于接收请求响应设备发送的待访问地址,其中,所述待访问地址为所述请求响应设备基于目标函数树获取的待创建设备的待访问虚拟机的地址,所述目标
函数树为所述请求响应设备基于函数调用关系获得的,且所述目标函数树为请求函数的全量函数容器所运行的至少一个虚拟机的树形结构,所述请求函数为函数容器创建请求所请求创建容器的函数,且所述请求函数为业务应用中的任一运算功能程序,所述待创建设备包括对所述请求函数进行容器创建的虚拟机;镜像获取模块,用于从所述待访问地址中,获取与所述请求函数对应的目标函数容器镜像;容器创建模块,用于基于所述目标函数容器镜像,创建所述请求函数对应的目标函数容器。
[0015]在本申请实施例中,所述镜像获取模块,还用于接收所述请求响应设备发送的数据请求信息;从所述待访问地址中,确定待获取镜像数据层,其中,所述待获取镜像数据层为镜像数据块序列;从所述镜像数据块序列中,获取与所述数据请求信息对应的镜像数据块子序列;基于所述镜像数据块子序列,得到所述请求函数对应的所述目标函数容器镜像。
[0016]在本申请实施例中,当所述镜像数据块序列中的每个镜像数据块为压缩数据块时,所述镜像数据块序列为压缩数据块序列;所述镜像获取模块,还用于将所述镜像数据块子序列,解压为所述请求函数对应的所述目标函数容器镜像。
[0017本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种容器处理方法,其特征在于,所述方法包括:响应于函数容器创建请求,基于函数调用关系,获取与请求函数对应的目标函数树,其中,所述函数容器创建请求用于请求对所述请求函数进行容器创建,所述目标函数树为所述请求函数的全量函数容器所运行的至少一个虚拟机的树形结构,所述请求函数为业务应用中的任一运算功能程序;从所述目标函数树中确定待创建设备的待访问虚拟机,读取所述待访问虚拟机的待访问地址,其中,所述待创建设备包括对所述请求函数进行容器创建的虚拟机;向所述待创建设备发送所述待访问地址,以使所述待创建设备中的虚拟机从所述待访问地址中获取目标函数容器镜像,并基于所述目标函数容器镜像创建所述请求函数对应的目标函数容器。2.根据权利要求1所述的方法,其特征在于,所述响应于函数容器创建请求,基于函数调用关系,获取与请求函数对应的目标函数树之前,所述方法包括:响应于所述请求函数的首次创建请求,确定基础虚拟机;向所述基础虚拟机发送镜像获取指示,其中,所述镜像获取指示用于指示所述基础虚拟机从函数容器镜像库中获取基础函数容器镜像,所述函数容器镜像库用于存储待部署函数的待部署函数容器镜像,所述待部署函数容器镜像是在响应于函数部署请求时针对所述待部署函数生成的函数容器镜像;基于所述基础虚拟机针对所述镜像获取指示发送的获取完成信息,将所述基础虚拟机确定为目标根节点;基于所述目标根节点构建所述目标函数树;将所述请求函数与所述目标函数树进行对应存储,得到所述函数调用关系。3.根据权利要求2所述的方法,其特征在于,所述响应于所述请求函数的首次创建请求,确定基础虚拟机之前,所述方法包括:响应于所述请求函数的当前创建请求,获取所述请求函数的容器镜像状态;当所述容器镜像状态为冷启动状态时,确定所述当前创建请求为所述首次创建请求;所述响应于所述请求函数的首次创建请求,确定基础虚拟机之后,所述方法包括:将所述容器镜像状态更新为缓存状态,其中,所述缓存状态表示所述虚拟机中包括所述基础函数容器镜像。4.根据权利要求1所述的方法,其特征在于,所述响应于函数容器创建请求,基于函数调用关系,获取与请求函数对应的目标函数树之后,所述方法包括:当所述目标函数树中的每个所述虚拟机均处于服务响应状态、且活动虚拟机库的活动虚拟机数量低于虚拟机数量阈值时,从空闲虚拟机库中选择所述待创建设备;将所述待创建设备更新至所述目标函数树中,得到更新后的目标函数树;基于所述更新后的目标函数树,更新所述函数调用关系。5.根据权利要求4所述的方法,其特征在于,所述目标函数树为M叉树,M为正整数;所述将所述待创建设备更新至所述目标函数树中,得到更新后的目标函数树,包括:从所述目标函数树对应的待插入节点序列中,选择目标待插入节点,其中,所述待插入节点序列包括所述目标函数树中子节点数量小于M的全量节点;将所述待创建设备确定为所述目标函数树中所述目标待插入节点的子节点,得到所述
更新后的目标函数树。6.根据权利要求4所述的方法,其特征在于,所述当所述目标函数树中的每个所述虚拟机均处于服务响应状态、且活动虚拟机库的活动虚拟机数量低于虚拟机数量阈值时,从空闲虚拟机库中选择所述待创建设备之前,所述方法包括:获取所述虚拟机所运行的函数容器的数量;将所述函数容器的数量小于容器数量阈值的所述虚拟机,确定为活动虚拟机;将所述活动虚拟机存储至所述活动虚拟机库中。7.根据权利要求1至5中任一项所述的方法,其特征在于,所述目标函数树为平衡二叉树,所述方法包括:从所述目标函数树中确定待删除虚拟机;响应于将所述待删除虚拟机从所述目标函数树中的删除操作,得到当前函数树;获取所述当前函数树的平衡因子,其中,所述平衡因子表示所述当前函数树的左右子树高度差;当所述当前函数树的平衡因子大于平衡阈值时,旋转所述当前函数树的子树,得到平衡树结构,其中,所述平衡树结构的平衡因子小于或等于所述平衡阈值。8.一种容器处理方法,其特征在于,所述方法包括:接收请求响应设备发送的待访问地址,其中,所述待访问地址为所述请求响应设备基于目标函数树获取的待创建设备的待访问虚拟机的地址,所述目标函数树为所述请求响...

【专利技术属性】
技术研发人员:石志林
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

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

1