CN114780202A - 一种函数计算资源池调整方法、装置、设备及介质 - Google Patents

一种函数计算资源池调整方法、装置、设备及介质 Download PDF

Info

Publication number
CN114780202A
CN114780202A CN202210319331.6A CN202210319331A CN114780202A CN 114780202 A CN114780202 A CN 114780202A CN 202210319331 A CN202210319331 A CN 202210319331A CN 114780202 A CN114780202 A CN 114780202A
Authority
CN
China
Prior art keywords
preset
function
resource pool
power consumption
container
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210319331.6A
Other languages
English (en)
Inventor
张东海
王刚
蔡卫卫
高传集
孙思清
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Cloud Information Technology Co Ltd
Original Assignee
Inspur Cloud Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Cloud Information Technology Co Ltd filed Critical Inspur Cloud Information Technology Co Ltd
Priority to CN202210319331.6A priority Critical patent/CN114780202A/zh
Publication of CN114780202A publication Critical patent/CN114780202A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45516Runtime code conversion or optimisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请公开了一种函数计算资源池调整方法、装置、设备及介质,包括获取待运行逻辑代码,并将所述待运行逻辑代码发送至预设pod中的函数运行容器;所述预设pod中包括所述函数运行容器和sidecar容器;基于所述预设pod中的sidecar容器获取所述函数运行容器中的函数数据信息,并将所述函数数据信息保存至预设数据采集库;将所述预设数据采集库中的所述函数数据信息输入至预设模型,以利用所述预设模型对下一周期的算力消耗需求进行预测,并将预测得到的算力消耗需求发送至预设资源池控制器;通过所述预设资源池控制器并基于算力消耗需求对预设资源池的资源进行调整。通过本申请的上述技术方案,能够有效提高资源利用率和函数计算资源池调整的效率,并减少资源消耗。

Description

一种函数计算资源池调整方法、装置、设备及介质
技术领域
本发明涉及云计算领域,特别涉及一种函数计算资源池调整方法、装置、设备及介质。
背景技术
目前,随着云计算技术的快速发展,应用上云逐步深化,基于云端的各项基础设施快速构建、部署、运行应用成为开发者的一个重要选项,云原生的技术理念和工程实践都以逐步成熟,应用云原生化成为了一个重要趋势,云原生技术已成为驱动业务增长的重要引擎,同时作为新型基础设施的重要支撑技术,作为云原生的一个重要技术领域Serverless,无需用户关注计算、存储、网络等基础设施,所有资源都以服务的方式为用户提供,通过Serverless相关技术可以为用户提供一种敏捷、按需的资源使用方式,对于构建弹性、可扩展、可观测的应用具有重要意义。函数计算服务作为Serverless技术的重要产品形态,为用户提供Serverless计算全托管服务,支持多种编程语言的执行环境及开发、调试、日志监控等全流程功能支持,用户只需要编写函数代码包或应用镜像并配置运行参数即可弹性、安全地运行代码;用户函数以事件驱动的形式触发执行,并完全按照实际任务执行消耗资源;用户可以基于函数计算服务快速构建任何类型的应用和服务,并且只需为任务实际执行消耗的资源付费;函数计算提供的是0-N的极致弹性伸缩能力,根据用户请求流量的大小对应的扩缩容资源,在0到N的扩容过程是后置的,用户流量进来后才启动扩容过程,尤其在扩容过程中存在函数冷启动的过程,消耗的时间一般比较长,在对时延比较敏感的场景下影响比较大。
由上可见,在函数计算资源池调整的过程中,如何避免由于函数冷启动造成时间损耗,能够有效提高资源利用率和函数计算资源池调整的效率,并减少资源消耗是本领域有待解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种函数计算资源池调整方法、装置、设备及介质,能够有效提高资源利用率和函数计算资源池调整的效率,并减少资源消耗,其具体方案如下:
第一方面,本申请公开了一种函数计算资源池调整方法,包括:
获取待运行逻辑代码,并将所述待运行逻辑代码发送至预设pod中的函数运行容器;所述预设pod中包括所述函数运行容器和sidecar容器;
基于所述预设pod中的sidecar容器获取所述函数运行容器中的函数数据信息,并将所述函数数据信息保存至预设数据采集库;
将所述预设数据采集库中的所述函数数据信息输入至预设模型,以利用所述预设模型对下一周期的算力消耗需求进行预测,并将预测得到的所述算力消耗需求发送至预设资源池控制器;
通过所述预设资源池控制器并基于所述算力消耗需求对预设资源池的资源进行调整。
可选的,所述获取待运行逻辑代码,并将所述待运行逻辑代码发送至预设pod中的函数运行容器之前,还包括:
建立Kubernetes容器与所述预设pod之间的通信连接,然后基于所述Kubernetes容器的编排调度功能对所述预设pod中的所述函数运行容器和所述sidecar容器进行控制。
可选的,所述获取待运行逻辑代码,并将所述待运行逻辑代码发送至预设pod中的函数运行容器之后,还包括:
通过所述函数运行容器运行所述待运行逻辑代码,以得到运行后的结果;
通过预设输出方法将所述运行后的结果输出并保存至第三方存储;所述预设输出方法包括同步返回或异步返回。
可选的,所述将所述预设数据采集库中的所述函数数据信息输入至预设模型,以利用所述预设模型对下一周期的算力消耗需求进行预测,包括:
将所述预设数据采集库中的所述函数数据信息输入至预设时间序列预测模型,并基于所述预设时间序列预测模型利用复合型序列的分解预测方法对下一周期的算力消耗需求进行预测。
可选的,所述基于所述预设时间序列预测模型利用复合型序列的分解预测方法对下一周期的算力消耗需求进行预测,包括:
基于所述函数数据信息确定出算力消耗需求序列;
基于所述预设时间序列预测模型利用加权移动平均趋势剔除法计算出季节指数,并从所述算力消耗需求序列中剔除所述季节指数,以得到下一周期的算力消耗需求。
可选的,所述基于所述预设时间序列预测模型利用复合型序列的分解预测方法对下一周期的算力消耗需求进行预测,包括:
通过预设周期确定方法确定出所述预设时间序列模型对算力消耗需求进行预测的预测周期;
基于所述预设时间序列预测模型利用复合型序列的分解预测方法和所述预测周期对下一周的算力消耗需求进行预测。
可选的,所述通过所述预设资源池控制器并基于所述算力消耗需求对预设资源池的资源进行调整,包括:
通过所述预设资源池控制器并基于所述算力消耗需求判断所述算力消耗需求与所述预设资源池的规模之间的大小关系;
从所述预设资源池中确定出未被占用的资源规模;若所述算力消耗需求大于所述未被占用的资源规模,则基于所述预设资源池控制器对所述未被占用的资源规模进行扩容;若所述算力消耗需求小于所述未被占用的资源规模,则基于所述预设资源池控制器对所述未被占用的资源规模进行缩容。
第二方面,本申请公开了一种函数计算资源池调整装置,包括:
代码发送模块,用于获取待运行逻辑代码,并将所述待运行逻辑代码发送至预设pod中的函数运行容器;所述预设pod中包括所述函数运行容器和sidecar容器;
信息保存模块,用于基于所述预设pod中的sidecar容器获取所述函数运行容器中的函数数据信息,并将所述函数数据信息保存至预设数据采集库;
预测模块,用于将所述预设数据采集库中的所述函数数据信息输入至预设模型,以利用所述预设模型对下一周期的算力消耗需求进行预测,并将预测得到的所述算力消耗需求发送至预设资源池控制器;
资源调整模块,用于通过所述预设资源池控制器并基于所述算力消耗需求对预设资源池的资源进行调整。
第三方面,本申请公开了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述的函数计算资源池调整方法。
第四方面,本申请公开了一种计算机存储介质,用于保存计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的函数计算资源池调整方法的步骤。
可见,本申请提供了一种函数计算资源池调整方法,包括获取待运行逻辑代码,并将所述待运行逻辑代码发送至预设pod中的函数运行容器;所述预设pod中包括所述函数运行容器和sidecar容器;基于所述预设pod中的sidecar容器获取所述函数运行容器中的函数数据信息,并将所述函数数据信息保存至预设数据采集库;将所述预设数据采集库中的所述函数数据信息输入至预设模型,以利用所述预设模型对下一周期的算力消耗需求进行预测,并将预测得到的所述算力消耗需求发送至预设资源池控制器;通过所述预设资源池控制器并基于所述算力消耗需求对预设资源池的资源进行调整。本申请利用预设pod中的函数运行容器和sidecar容器获取并保存函数数据信息,然后将函数数据信息输入至预设模型,以利用所述预设模型对下一周期的算力消耗需求进行预测,以便对预设资源池的资源进行调整,从而有效避免了由于函数冷启动造成时间损耗,能够有效提高资源利用率,进一步增加函数计算资源池调整的效率,并减少资源消耗。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种函数计算资源池调整方法流程图;
图2为本申请公开的一种函数计算资源池调整方法流程图;
图3为本申请公开的一种函数计算资源池调整方法具体流程图;
图4为本申请公开的一种函数计算资源池调整方法拓扑图;
图5为本申请公开的一种函数计算资源池调整装置结构示意图;
图6为本申请提供的一种电子设备结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在当前背景下,由于在现有技术中,随着云计算技术的快速发展,应用上云逐步深化,基于云端的各项基础设施快速构建、部署、运行应用成为开发者的一个重要选项,云原生的技术理念和工程实践都以逐步成熟,应用云原生化成为了一个重要趋势,云原生技术已成为驱动业务增长的重要引擎,同时作为新型基础设施的重要支撑技术。由上可见,在函数计算资源池调整的过程中,如何避免由于函数冷启动造成时间损耗,能够有效提高资源利用率和函数计算资源池调整的效率,并减少资源消耗是本领域有待解决的问题。
参见图1所示,本发明实施例公开了一种函数计算资源池调整方法,具体可以包括:
步骤S11:获取待运行逻辑代码,并将所述待运行逻辑代码发送至预设pod中的函数运行容器;所述预设pod中包括所述函数运行容器和sidecar容器。
本实施例中,在获取待运行逻辑代码,并将所述待运行逻辑代码发送至预设pod中的函数运行容器之前,还包括:建立Kubernetes容器与所述预设pod之间的通信连接,然后基于所述Kubernetes容器的编排调度功能对所述预设pod中的所述函数运行容器和所述sidecar容器进行控制。
本实施例中,在获取待运行逻辑代码,并将所述待运行逻辑代码发送至预设pod中的函数运行容器之后,通过所述函数运行容器运行所述待运行逻辑代码,以得到运行后的结果,然后通过预设输出方法将所述运行后的结果输出并保存至第三方存储;所述预设输出方法包括同步返回或异步返回。
步骤S12:基于所述预设pod中的sidecar容器获取所述函数运行容器中的函数数据信息,并将所述函数数据信息保存至预设数据采集库。
步骤S13:将所述预设数据采集库中的所述函数数据信息输入至预设模型,以利用所述预设模型对下一周期的算力消耗需求进行预测,并将预测得到的所述算力消耗需求发送至预设资源池控制器。
本实施例中,在将所述函数数据信息保存至预设数据采集库之后,将所述预设数据采集库中的所述函数数据信息输入至预设模型,然后利用所述预设模型对下一周期的算力消耗需求进行预测,并将预测得到的所述算力消耗需求发送至预设资源池控制器。
步骤S14:通过所述预设资源池控制器并基于所述算力消耗需求对预设资源池的资源进行调整。
本实施例中,在将预测得到的所述算力消耗需求发送至预设资源池控制器之后,通过所述预设资源池控制器并基于所述算力消耗需求判断所述算力消耗需求与所述预设资源池的规模之间的大小关系,然后从所述预设资源池中确定出未被占用的资源规模;若所述算力消耗需求大于所述未被占用的资源规模,则基于所述预设资源池控制器对所述未被占用的资源规模进行扩容;若所述算力消耗需求小于所述未被占用的资源规模,则基于所述预设资源池控制器对所述未被占用的资源规模进行缩容。
本实施例中,获取待运行逻辑代码,并将所述待运行逻辑代码发送至预设pod中的函数运行容器;所述预设pod中包括所述函数运行容器和sidecar容器;基于所述预设pod中的sidecar容器获取所述函数运行容器中的函数数据信息,并将所述函数数据信息保存至预设数据采集库;将所述预设数据采集库中的所述函数数据信息输入至预设模型,以利用所述预设模型对下一周期的算力消耗需求进行预测,并将预测得到的所述算力消耗需求发送至预设资源池控制器;通过所述预设资源池控制器并基于所述算力消耗需求对预设资源池的资源进行调整。本申请利用预设pod中的函数运行容器和sidecar容器获取并保存函数数据信息,然后将函数数据信息输入至预设模型,以利用所述预设模型对下一周期的算力消耗需求进行预测,以便对预设资源池的资源进行调整,从而有效避免了由于函数冷启动造成时间损耗,能够有效提高资源利用率,进一步增加函数计算资源池调整的效率,并减少资源消耗。
参见图2所示,本发明实施例公开了一种函数计算资源池调整方法,具体可以包括:
步骤S21:获取待运行逻辑代码,并将所述待运行逻辑代码发送至预设pod中的函数运行容器;所述预设pod中包括所述函数运行容器和sidecar容器。
步骤S22:基于所述预设pod中的sidecar容器获取所述函数运行容器中的函数数据信息,并将所述函数数据信息保存至预设数据采集库。
步骤S23:将所述预设数据采集库中的所述函数数据信息输入至预设时间序列预测模型,基于所述函数数据信息确定出算力消耗需求序列。
步骤S24:通过预设周期确定方法确定出所述预设时间序列模型对算力消耗需求进行预测的预测周期。
步骤S25:基于所述预设时间序列预测模型和所述预测周期利用加权移动平均趋势剔除法计算出季节指数,并从所述算力消耗需求序列中剔除所述季节指数,以得到下一周期的算力消耗需求,并将预测得到的所述算力消耗需求发送至预设资源池控制器。
步骤S26:通过所述预设资源池控制器并基于所述算力消耗需求对预设资源池的资源进行调整。
本实施例中,获取待运行逻辑代码,并将所述待运行逻辑代码发送至预设pod中的函数运行容器;所述预设pod中包括所述函数运行容器和sidecar容器;基于所述预设pod中的sidecar容器获取所述函数运行容器中的函数数据信息,并将所述函数数据信息保存至预设数据采集库,将所述预设数据采集库中的所述函数数据信息输入至预设时间序列预测模型,基于所述函数数据信息确定出算力消耗需求序列,通过预设周期确定方法确定出所述预设时间序列模型对算力消耗需求进行预测的预测周期,基于所述预设时间序列预测模型和所述预测周期利用加权移动平均趋势剔除法计算出季节指数,并从所述算力消耗需求序列中剔除所述季节指数,以得到下一周期的算力消耗需求,并将预测得到的所述算力消耗需求发送至预设资源池控制器,通过所述预设资源池控制器并基于所述算力消耗需求对预设资源池的资源进行调整。由上可见,通过本申请在函数计算资源池调整的过程中,能够避免由于函数冷启动造成时间损耗,能够有效提高资源利用率和函数计算资源池调整的效率,并减少资源消耗。
例如,如图3所示,预设pod中包括所述函数运行容器和sidecar容器,在获取待运行逻辑代码,并将所述待运行逻辑代码发送至预设pod中的函数运行容器之后,然后基于所述预设pod中的sidecar容器获取所述函数运行容器中的函数数据信息,并将所述函数数据信息保存至数据采集组件中,将所述数据采集组件中的所述函数数据信息输入至模型预测计算组件中,也就是预设时间序列预测模型,基于所述函数数据信息确定出算力消耗需求序列,通过预设周期确定方法确定出所述预设时间序列模型对算力消耗需求进行预测的预测周期,基于所述预设时间序列预测模型和所述预测周期利用加权移动平均趋势剔除法计算出季节指数,并从所述算力消耗需求序列中剔除所述季节指数,以得到下一周期的算力消耗需求,并将预测得到的所述算力消耗需求发送至预设资源池控制器,通过所述预设资源池控制器并基于所述算力消耗需求对预设资源池的资源进行调整。
其中,所述基于所述函数数据信息确定出算力消耗需求序列,通过预设周期确定方法确定出所述预设时间序列模型对算力消耗需求进行预测的预测周期,基于所述预设时间序列预测模型和所述预测周期利用加权移动平均趋势剔除法计算出季节指数,并从所述算力消耗需求序列中剔除所述季节指数,以得到下一周期的算力消耗需求,具体过程是在将一段时期内单位时间内消耗的资源组成一个时间序列数据集,函数应用在一定时期内随着业务量的变化消耗的资源是有一定趋势性的,在业务快速增长阶段函数应用算力消耗是有向上的趋势,在业务衰退阶段,算力消耗具有下降趋势;对于某些函数应用来讲,每天的9-10点、14-16点是流量高峰期,下班时间是低谷期,对于另外一些应用12-13点、21-22点是其流量高峰期,其算力消耗具有明显的以天为单位的季节性,具有季节性成分。函数实例是sidecar容器上报每一次函数请求执行的相关数据,包括单次的执行时间、函数实例内存配置上报到数据采集组件后计算本次调用所消耗的算力,按照小时累计函数所消耗的算力大小,并最多取近240小时的数据最终形成以小时为时间序列x轴,消耗资源算力为Y轴的数据集,如图4所示,每个小时的算力消耗观察值表示为Yt(t=1、2、3、4……240),数据集最多包括近240小时(近10天)算力消耗观察值,此预测方法不考虑240小时前的消耗数据,对于新建函数数据无法采集满240小时数据的,则以零填充,表示此函数未消耗资源。
其中,基于所述预设时间序列预测模型和所述预测周期利用加权移动平均趋势剔除法计算出季节指数,并从所述算力消耗需求序列中剔除所述季节指数,以得到下一周期的算力消耗需求,具体可以包括:首先,采用24小时移动平均并对其结果再次进行中心化处理,即将移动平均的结果再进行一次二项移动平均,最终得到算力消耗中心化移动平均值,其次,根据移动简单移动平均法,计算每小时算力消耗的移动平均值,然后计算一次移动平均值,为了避免较大的预测偏差和数据趋势滞后,在一次移动平均的基础上进行二项移动平均得到最终的算力消耗中心化移动平均值,最后通过中心化移动平均值计算算力消耗季节比率、每个周期内的比率平均值、总的算力消耗比率平均数,最终得到季节指数,然后通过将每小时的算力消耗分别除以相应的季节指数,将季节成分从时间序列中分离出去,最终经过以上处理则得到了一个去除季节成分的算力消耗数据序列,它反映了在没有季节因素下的算力消耗的变化形态。
参见图5所示,本发明实施例公开了一种函数计算资源池调整装置,具体可以包括:
代码发送模块11,用于获取待运行逻辑代码,并将所述待运行逻辑代码发送至预设pod中的函数运行容器;所述预设pod中包括所述函数运行容器和sidecar容器;
信息保存模块12,用于基于所述预设pod中的sidecar容器获取所述函数运行容器中的函数数据信息,并将所述函数数据信息保存至预设数据采集库;
预测模块13,用于将所述预设数据采集库中的所述函数数据信息输入至预设模型,以利用所述预设模型对下一周期的算力消耗需求进行预测,并将预测得到的所述算力消耗需求发送至预设资源池控制器;
资源调整模块14,用于通过所述预设资源池控制器并基于所述算力消耗需求对预设资源池的资源进行调整。
本实施例中,获取待运行逻辑代码,并将所述待运行逻辑代码发送至预设pod中的函数运行容器;所述预设pod中包括所述函数运行容器和sidecar容器;基于所述预设pod中的sidecar容器获取所述函数运行容器中的函数数据信息,并将所述函数数据信息保存至预设数据采集库;将所述预设数据采集库中的所述函数数据信息输入至预设模型,以利用所述预设模型对下一周期的算力消耗需求进行预测,并将预测得到的所述算力消耗需求发送至预设资源池控制器;通过所述预设资源池控制器并基于所述算力消耗需求对预设资源池的资源进行调整。本申请利用预设pod中的函数运行容器和sidecar容器获取并保存函数数据信息,然后将函数数据信息输入至预设模型,以利用所述预设模型对下一周期的算力消耗需求进行预测,以便对预设资源池的资源进行调整,从而有效避免了由于函数冷启动造成时间损耗,能够有效提高资源利用率,进一步增加函数计算资源池调整的效率,并减少资源消耗。
在一些具体实施例中,所述代码发送模块11,具体可以包括:
通信连接模块,用于建立Kubernetes容器与所述预设pod之间的通信连接;
控制模块,用于基于所述Kubernetes容器的编排调度功能对所述预设pod中的所述函数运行容器和所述sidecar容器进行控制。
在一些具体实施例中,所述代码发送模块11,具体可以包括:
代码运行模块,用于通过所述函数运行容器运行所述待运行逻辑代码,以得到运行后的结果;
结果保存模块,用于通过预设输出方法将所述运行后的结果输出并保存至第三方存储;所述预设输出方法包括同步返回或异步返回。
在一些具体实施例中,所述预测模块13,具体可以包括:
信息输入模块,用于将所述预设数据采集库中的所述函数数据信息输入至预设时间序列预测模型;
序列确定模块,用于基于所述函数数据信息确定出算力消耗需求序列;
季节指数计算模块,用于基于所述预设时间序列预测模型利用加权移动平均趋势剔除法计算出季节指数,并从所述算力消耗需求序列中剔除所述季节指数;
预测周期确定模块,用于通过预设周期确定方法确定出所述预设时间序列模型对算力消耗需求进行预测的预测周期;
算力消耗需求确定模块,用于基于所述预设时间序列预测模型利用复合型序列的分解预测方法和所述预测周期对下一周的算力消耗需求进行预测。
在一些具体实施例中,所述资源调整模块14,具体可以包括:
判断模块,用于通过所述预设资源池控制器并基于所述算力消耗需求判断所述算力消耗需求与所述预设资源池的规模之间的大小关系;
资源规模调整模块,用于从所述预设资源池中确定出未被占用的资源规模;若所述算力消耗需求大于所述未被占用的资源规模,则基于所述预设资源池控制器对所述未被占用的资源规模进行扩容;若所述算力消耗需求小于所述未被占用的资源规模,则基于所述预设资源池控制器对所述未被占用的资源规模进行缩容。
图6为本申请实施例提供的一种电子设备的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的由函数计算资源池调整设备执行的函数计算资源池调整方法中的相关步骤。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括操作系统221、计算机程序222及数据223等,数据223可以包括各种各样的数据。存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,其可以是Windows Server、Netware、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的函数计算资源池调整方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
进一步的,本申请实施例还公开了一种计算机可读存储介质,这里所说的计算机可读存储介质包括随机存取存储器(Random Access Memory,RAM)、内存、只读存储器(Read-Only Memory,ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、磁碟或者光盘或技术领域内所公知的任意其他形式的存储介质。其中,所述计算机程序被处理器执行时实现前述函数计算资源池调整方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的函数计算资源池调整或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的函数计算资源池调整进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种函数计算资源池调整方法,其特征在于,包括:
获取待运行逻辑代码,并将所述待运行逻辑代码发送至预设pod中的函数运行容器;所述预设pod中包括所述函数运行容器和sidecar容器;
基于所述预设pod中的sidecar容器获取所述函数运行容器中的函数数据信息,并将所述函数数据信息保存至预设数据采集库;
将所述预设数据采集库中的所述函数数据信息输入至预设模型,以利用所述预设模型对下一周期的算力消耗需求进行预测,并将预测得到的所述算力消耗需求发送至预设资源池控制器;
通过所述预设资源池控制器并基于所述算力消耗需求对预设资源池的资源进行调整。
2.根据权利要求1所述函数计算资源池调整方法,其特征在于,所述获取待运行逻辑代码,并将所述待运行逻辑代码发送至预设pod中的函数运行容器之前,还包括:
建立Kubernetes容器与所述预设pod之间的通信连接,然后基于所述Kubernetes容器的编排调度功能对所述预设pod中的所述函数运行容器和所述sidecar容器进行控制。
3.根据权利要求1所述函数计算资源池调整方法,其特征在于,所述获取待运行逻辑代码,并将所述待运行逻辑代码发送至预设pod中的函数运行容器之后,还包括:
通过所述函数运行容器运行所述待运行逻辑代码,以得到运行后的结果;
通过预设输出方法将所述运行后的结果输出并保存至第三方存储;所述预设输出方法包括同步返回或异步返回。
4.根据权利要求1所述函数计算资源池调整方法,其特征在于,所述将所述预设数据采集库中的所述函数数据信息输入至预设模型,以利用所述预设模型对下一周期的算力消耗需求进行预测,包括:
将所述预设数据采集库中的所述函数数据信息输入至预设时间序列预测模型,并基于所述预设时间序列预测模型利用复合型序列的分解预测方法对下一周期的算力消耗需求进行预测。
5.根据权利要求4所述函数计算资源池调整方法,其特征在于,所述基于所述预设时间序列预测模型利用复合型序列的分解预测方法对下一周期的算力消耗需求进行预测,包括:
基于所述函数数据信息确定出算力消耗需求序列;
基于所述预设时间序列预测模型利用加权移动平均趋势剔除法计算出季节指数,并从所述算力消耗需求序列中剔除所述季节指数,以得到下一周期的算力消耗需求。
6.根据权利要求5所述函数计算资源池调整方法,其特征在于,所述基于所述预设时间序列预测模型利用复合型序列的分解预测方法对下一周期的算力消耗需求进行预测,包括:
通过预设周期确定方法确定出所述预设时间序列模型对算力消耗需求进行预测的预测周期;
基于所述预设时间序列预测模型利用复合型序列的分解预测方法和所述预测周期对下一周的算力消耗需求进行预测。
7.根据权利要求1至6任一项所述函数计算资源池调整方法,其特征在于,所述通过所述预设资源池控制器并基于所述算力消耗需求对预设资源池的资源进行调整,包括:
通过所述预设资源池控制器并基于所述算力消耗需求判断所述算力消耗需求与所述预设资源池的规模之间的大小关系;
从所述预设资源池中确定出未被占用的资源规模;若所述算力消耗需求大于所述未被占用的资源规模,则基于所述预设资源池控制器对所述未被占用的资源规模进行扩容;若所述算力消耗需求小于所述未被占用的资源规模,则基于所述预设资源池控制器对所述未被占用的资源规模进行缩容。
8.一种函数计算资源池调整装置,其特征在于,包括:
代码发送模块,用于获取待运行逻辑代码,并将所述待运行逻辑代码发送至预设pod中的函数运行容器;所述预设pod中包括所述函数运行容器和sidecar容器;
信息保存模块,用于基于所述预设pod中的sidecar容器获取所述函数运行容器中的函数数据信息,并将所述函数数据信息保存至预设数据采集库;
预测模块,用于将所述预设数据采集库中的所述函数数据信息输入至预设模型,以利用所述预设模型对下一周期的算力消耗需求进行预测,并将预测得到的所述算力消耗需求发送至预设资源池控制器;
资源调整模块,用于通过所述预设资源池控制器并基于所述算力消耗需求对预设资源池的资源进行调整。
9.一种电子设备,其特征在于,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至7任一项所述的函数计算资源池调整方法。
10.一种计算机可读存储介质,其特征在于,用于保存计算机程序;其中,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的函数计算资源池调整方法。
CN202210319331.6A 2022-03-29 2022-03-29 一种函数计算资源池调整方法、装置、设备及介质 Pending CN114780202A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210319331.6A CN114780202A (zh) 2022-03-29 2022-03-29 一种函数计算资源池调整方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210319331.6A CN114780202A (zh) 2022-03-29 2022-03-29 一种函数计算资源池调整方法、装置、设备及介质

Publications (1)

Publication Number Publication Date
CN114780202A true CN114780202A (zh) 2022-07-22

Family

ID=82425100

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210319331.6A Pending CN114780202A (zh) 2022-03-29 2022-03-29 一种函数计算资源池调整方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN114780202A (zh)

Similar Documents

Publication Publication Date Title
CN108958916B (zh) 一种移动边缘环境下工作流卸载优化方法
CN102622273B (zh) 基于自学习负载预测的集群按需启动方法
WO2013185175A1 (en) Predictive analytics for resource provisioning in hybrid cloud
CN104407912A (zh) 一种虚拟机配置方法及装置
CN111078404B (zh) 一种计算资源确定方法、装置、电子设备及介质
CN112783607A (zh) 容器集群中任务部署方法及装置
CN113656179A (zh) 云计算资源的调度方法及装置、电子设备和存储介质
Goossens et al. Overview of real-time scheduling problems
CN114840323A (zh) 任务处理方法、装置、系统、电子设备以及存储介质
CN114816753A (zh) 一种数据集群计算节点扩缩方法、装置、设备及介质
CN109756372B (zh) 一种电信计费系统的弹性伸缩方法及装置
EP3723343B1 (en) Resource processing method and system, storage medium and electronic device
CN115794337A (zh) 资源调度方法、装置、云平台、设备及存储介质
CN111858040A (zh) 一种资源调度方法和装置
CN116643844B (zh) 面向电力超算云资源自动扩展的智能化管理系统及方法
CN113254191A (zh) 用于运行应用的方法、电子设备和计算机程序产品
Fan et al. Knative autoscaler optimize based on double exponential smoothing
CN112565391A (zh) 调整工业互联网平台中实例的方法、装置、设备和介质
CN114780202A (zh) 一种函数计算资源池调整方法、装置、设备及介质
CN115964182A (zh) 资源的调度方法和系统
CN114866563A (zh) 扩容方法、装置、系统和存储介质
CN115952054A (zh) 一种仿真任务资源管理方法、装置、设备及介质
CN113965563B (zh) 基于模型的业务处理方法及装置、服务器
CN115686830A (zh) 边缘计算资源弹性调度方法及系统
US20220043732A1 (en) Method, device, and program product for managing computing resource in storage system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination