利索能及
我要发布
收藏
专利号: 201910886055X
申请人: 平安科技(深圳)有限公司
专利类型:发明专利
专利状态:已下证
更新日期:2026-08-19
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种弹性执行热容器的方法,其特征在于,所述方法包括:

接收用户的访问请求;

根据所述用户的访问请求创建预热容器以及预热队列,所述预热容器用于部署运行环境,所述预热队列是指用于存放所述预热容器的队列;

根据所述预热容器创建初始热容器,通过将所述初始热容器加上预置标识ID得到目标热容器,并将所述目标热容器放至热队列中,所述热队列是指用于存放所述目标热容器的队列,所述初始热容器是指运行环境以及运行规则;

执行存储在所述目标热容器中的可执行脚本,并计算所述可执行脚本的运行结果,基于所述运行结果在所述热队列中提取所述目标热容器并启用所述目标热容器,所述可执行脚本用于计算所述目标热容器中可用的资源,所述资源包括图形处理器资源、中央处理器资源、内存资源、缓存资源、存储资源中的至少一种;

在所述运行结果返回后,将所述目标热容器的状态设置为准备中,并根据所述可用的资源或用户输入的参数设置超时时长与容器阈值时长,所述超时时长小于所述容器阈值时长,所述超时时长是指响应的最大时长,所述容器阈值时长是指所述容器允许存在的最大时长;

若所述目标热容器在所述超时时长内没有接收到第一请求,则将所述目标热容器的状态设置为暂停,并将所述目标热容器存放至所述热队列,所述第一请求是指用户访问所述目标热容器的请求;

若所述目标热容器在所述超时时长内接收到所述第一请求,则将所述目标热容器的状态设置为运行中,并处理所述第一请求;

计算所述目标热容器的运行时长,得到容器存在时长;

若所述容器存在时长大于或等于所述容器阈值时长,则通过所述预置ID索引到所述目标热容器,并释放所述目标热容器。

2.根据权利要求1所述的方法,其特征在于,所述执行存储在所述目标热容器中的可执行脚本,并计算所述可执行脚本的运行结果,基于所述运行结果在所述热队列中提取所述目标热容器并启用所述目标热容器,包括:通过可执行脚本将中央处理器和内存的值进行Base64运算后作为所述预热队列的键key,基于所述key从所述预热队列中查询是否存在所述预热容器;

若存在所述预热容器,则通过所述预热容器获取所述目标热容器的ID,基于所述目标热容器的ID提取并启动所述目标热容器;

创建一个与所述目标热容器具有相同属性的热容器存放至所述热队列;

或者,

根据命名空间、所述可执行脚本以及版本号计算所述目标热容器的ID,并基于所述目标热容器的ID查询所述热队列中存在的目标热容器,提取并启用存在的所述目标热容器。

3.根据权利要求2所述的方法,其特征在于,所述根据命名空间、所述可执行脚本以及版本号计算所述目标热容器的ID,并基于所述目标热容器的ID查询所述热队列中存在的目标热容器,提取并启用存在的所述目标热容器,包括:获取所述可执行脚本的运行结果;

基于所述运行结果中对应的资源数量及资源类型,确定预置设备中的可用资源;

调用与所述可执行脚本的运行结果相应的命名空间、所述可执行脚本以及版本号,计算得到所述目标热容器的ID,查询所述热队列中存在的目标热容器;

基于所述可用资源提取并启用所述目标热容器。

4.根据权利要求2所述的方法,其特征在于,所述创建一个与所述目标热容器具有相同属性的热容器存放至所述热队列,包括:将所述目标热容器放入所述热队列中,所述热队列包括并行处理队列和串行处理队列;

获取所述热队列中的头节点链表,所述头节点链表为所述热队列中每个key对应的消息链表的节点连接在一起的链表,所述头节点链表包括所述并行处理队列中的并行头节点链表以及串行处理队列中的串行头节点链表;

基于每个key处理所述串行头节点链表或者所述并行头节点链表。

5.根据权利要求1‑4中任一项所述的方法,其特征在于,所述基于所述运行结果在所述热队列中提取所述目标热容器并启用所述目标热容器,包括:当在预设时长中接收到的所述用户的访问请求数量大于第一阈值时,采用第一阈值个数的线程池启用所述目标热容器;

当在预设时长中接收到的所述用户的访问请求数量小于或等于第一阈值时,根据所述到所述用户的访问请求个数的线程池启用所述目标热容器。

6.根据权利要求1所述的方法,其特征在于,所述接收用户的访问请求之后,所述根据所述用户的访问请求创建预热容器以及预热队列之前,所述方法还包括:分析用户的访问信息,并判断用户是否为非正常用户;

若所述用户的访问信息中出现不良访问记录,则确定所述用户为非正常用户,并禁止所述用户进行访问。

7.根据权利要求6所述的方法,其特征在于,所述分析用户的访问信息,并判断用户是否为非正常用户之前,所述方法还包括:响应所述用户的访问请求,获取所述用户的访问请求所中携带的数据;

将所述携带的数据写入后端的存储器中,向所述用户的访问请求的发送端反馈请求完成指令。

8.一种弹性执行热容器的装置,其特征在于,所述装置包括:

输入输出模块,用于接收用户的访问请求;

处理模块,用于根据所述用户的访问请求创建预热容器以及预热队列,所述预热容器用于部署运行环境,所述预热队列是指用于存放所述预热容器的队列;根据所述预热容器创建初始热容器,通过将所述初始热容器加上预置标识ID得到目标热容器,并将所述目标热容器放至热队列中,所述热队列是指用于存放所述目标热容器的队列,所述初始热容器是指运行环境以及运行规则;执行存储在所述目标热容器中的可执行脚本,并计算所述可执行脚本的运行结果,基于所述运行结果在所述热队列中提取所述目标热容器并启用所述目标热容器,所述可执行脚本用于计算所述目标热容器中可用的资源,所述资源包括图形处理器资源、中央处理器资源、内存资源、缓存资源、存储资源中的至少一种;在所述运行结果返回后,将所述目标热容器的状态设置为准备中,并根据所述可用的资源或用户输入的参数设置超时时长与容器阈值时长,所述超时时长小于所述容器阈值时长,所述超时时长是指响应的最大时长,所述容器阈值时长是指所述容器允许存在的最大时长;若所述目标热容器在所述超时时长内没有接收到第一请求,则将所述目标热容器的状态设置为暂停,并将所述目标热容器存放至所述热队列;所述第一请求是指用户访问所述目标热容器的请求;若所述目标热容器在所述超时时长内接收到所述第一请求,则将所述目标热容器的状态设置为运行中,并处理所述第一请求;计算所述目标热容器的运行时长,得到容器存在时长;若所述容器存在时长大于或等于所述容器阈值时长,则通过所述预置ID索引到所述目标热容器,并释放所述目标热容器。

9.一种弹性执行热容器设备,其特征在于,所述计算机设备包括:

至少一个处理器、存储器和输入输出单元;

其中,所述存储器用于存储程序代码,所述处理器用于调用所述存储器中存储的程序代码来执行如权利要求1‑7中任一项所述的方法。

10.一种计算机存储介质,其特征在于,其包括指令,当其在计算机上运行时,使得计算机执行如权利要求1‑7中任一项所述的方法。