CN115373764B - 一种容器自动加载方法和装置 - Google Patents

一种容器自动加载方法和装置 Download PDF

Info

Publication number
CN115373764B
CN115373764B CN202211325601.0A CN202211325601A CN115373764B CN 115373764 B CN115373764 B CN 115373764B CN 202211325601 A CN202211325601 A CN 202211325601A CN 115373764 B CN115373764 B CN 115373764B
Authority
CN
China
Prior art keywords
user
scene
data
pod
pods
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.)
Active
Application number
CN202211325601.0A
Other languages
English (en)
Other versions
CN115373764A (zh
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.)
Zhongcheng Hualong Computer Technology Co Ltd
Original Assignee
Zhongcheng Hualong Computer 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 Zhongcheng Hualong Computer Technology Co Ltd filed Critical Zhongcheng Hualong Computer Technology Co Ltd
Priority to CN202211325601.0A priority Critical patent/CN115373764B/zh
Publication of CN115373764A publication Critical patent/CN115373764A/zh
Application granted granted Critical
Publication of CN115373764B publication Critical patent/CN115373764B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • 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/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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
    • 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/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种容器自动加载方法和装置,涉及程序的加载或启动的技术领域,其中所述方法包括:获取用户行为习惯数据,包括用户使用时间数据、用户配置性能数据、用户场景数据;根据用户场景数据确定用户预加载的场景内容并获取场景内容标签,根据场景内容标签和用户配置性能数据分配pod;所述pod部署时配置有共享存储器,其内包含所述pod对应场景的纹理单元;获取用户使用时间数据,据此得到预测用户使用时间,在所述预测用户使用时间之前加载容器。本发明根据用户行为习惯数据,提前加载用户最有可能使用的场景,减少用户等待加载的时间,在云端合理为容器分配资源,提供共享纹理模板,提高了资源利用效率。

Description

一种容器自动加载方法和装置
技术领域
本发明涉及程序的加载或启动的技术领域,尤其涉及一种容器自动加载方法和装置。
背景技术
随着5G、云计算的快速发展,产生了包括云应用在内的一些新的应用架构模式,可以减少对本地客户端处理能力的需求,以及降低本地客户更新配置客户端文件的频率,用户可以在云容器内加载应用程序,并通过视频流的方式向客户端传输数据。在很多应用场景下,需要专业人员反复实景训练,但是这受到场地和人员限制,通过在虚拟空间中模拟各类实景训练场景,可以增加专业人员的熟练度,同时同一批人员可以在同一个场景下反复训练,不受时间、空间的限制。
Kubernetes由Master和Node组成,Master负责管理容器的编排、部署、调度等,Node是容器运行的载体,每个Node上面可以运行成百上千个Pod容器。Pod是Kubernetes创建或者部署的最小单位,一个Pod封装一个或者多个容器。
随着使用云应用客户端的数量的增加,云服务器中如何进行容器管理、资源分配使尽量减小云端的计算压力、提高资源利用率,在多节点中合理分配网络资源使得各个节点的网络和计算负载均衡、如何减少用户等待容器加载应用程序的时间以提高用户体验都成为了亟待解决的一些问题,需要一种用户等待时间短、网络和计算资源分配合理利用率高的容器自动加载方法。
发明内容
针对上述现有技术中存在的缺陷,本发明提供一种容器自动加载方法,应用于分布式云计算系统,所述方法包括:
获取用户行为习惯数据,所述用户行为习惯数据包括用户使用时间数据、用户配置性能数据、用户场景数据,所述用户场景数据包括用户场景时长数据,用户场景评分数据,用户目标数据,用户场景近期序列;
根据用户场景数据确定用户预加载的场景内容并获取场景内容标签,根据场景内容标签和用户配置性能数据分配pod,所述pod中的容器的场景内容标签相同,所述pod中的容器对应的用户配置性能数据相同,所在工作节点内各个pod的预期带宽分配总和不超过所述工作节点的总带宽;
所述pod部署时配置有共享存储器,所述共享存储器内包含所述pod对应场景的纹理单元,所述pod中的容器通过访问接口读取所述共享存储器中的场景的纹理模版,所述纹理模版的像素步长和pod对应的用户配置性能对应;
获取用户使用时间数据,根据所述用户使用时间数据得到预测用户使用时间,在所述预测用户使用时间之前加载容器。
其中,所在工作节点内各个pod的预期带宽分配总和不超过所述工作节点的总带宽包括:
在预测时段内,确定所述工作节点内各个pod的预期带宽分配总和的最大值不大于所述工作节点的总带宽;
根据对所有用户使用时段进行预测后,获取所述预测时段内需要加载的容器和按照现有部署pod确定对应分配的pod,根据用户配置信息和pod内容器数量确定预测要分配给pod的带宽,计算预测时段内所述工作节点内各个pod的预期带宽总和的最大值是否超过所在工作节点最大带宽,若是则在预测时段前调整所述工作节点内的pod,将部分pod迁移到网络负载较低的工作节点上去。
其中,在所述工作节点内,混合部署网络带宽需求高和需求低的pod,将网络需求高的pod分开部署在不同节点,当需要调整工作节点内的pod时,优先迁移网络带宽需求低的pod。
其中,根据用户场景数据确定给用户预加载的场景内容包括:
首先,判断接收到的用户场景数据中的用户目标数据不为空,表明用户设置了目标数据,则通过如下公式计算有
Figure 886961DEST_PATH_IMAGE001
个场景下第
Figure 391892DEST_PATH_IMAGE002
个场景的生成系数
Figure 845743DEST_PATH_IMAGE003
Figure 436125DEST_PATH_IMAGE004
,其中
Figure 274768DEST_PATH_IMAGE005
其中,
Figure 243992DEST_PATH_IMAGE006
为用户设置的第
Figure 244309DEST_PATH_IMAGE002
个场景的用户目标数据,
Figure 56407DEST_PATH_IMAGE007
为用户在的第
Figure 571177DEST_PATH_IMAGE002
个场景的用户场景评分数据,
Figure 785121DEST_PATH_IMAGE008
为场景任务在目标中的占比,
Figure 956339DEST_PATH_IMAGE009
为用户在的第
Figure 255734DEST_PATH_IMAGE002
个场景的用户场景时长数据;
将生成系数
Figure 311546DEST_PATH_IMAGE003
按照从大到小的顺序进行排序,选择排序最靠前的生成系数对应的场景内容进行预加载;
判断接收到的用户场景数据中的用户目标数据为空,则选择预加载场景近期序列中对应用户场景评分数据不合格对应的场景内容,如场景近期序列中对应用户场景评分数据均合格则随机加载场景近期序列中不包括的场景内容。
其中,当检测到用户设备请求与容器停止通信连接或者接收到用户发送的结束服务指令时,及时删除该用户设备对应的容器并释放容器资源。
其中,在预加载容器后的等待时间阈值内没有收到用户设备请求传输的指令时,删除预加载容器并释放容器资源。
其中,从所述用户设备处接收切换场景指令,所述切换场景指令中包括请求的场景内容ID和用户配置信息,根据场景内容ID获取切换场景内容标签,根据所述切换场景内容标签和配置信息找到第二pod,将当前容器迁移到第二pod中,将用户信息备份后重新加载容器到第二pod,使用第二pod共享存储器中的纹理模版对用户请求的场景进行渲染后传输。
其中,所述pod中的容器获得的网络带宽资源相同。
其中,在遇到系统报警后,查看系统报警指明的场景和用户配置情况,定位对应pod并对其进行恢复处理。
本发明还提出了一种容器自动加载装置,为分布式云计算系统,所述装置内包含多个工作节点,每个工作节点上部署有多个pod,每个pod内可加载多个容器,用于实现容器自动加载方法。
与现有技术相比,通过本发明的方法可以根据用户使用数据、用户配置数据和用户场景数据,提前加载用户最有可能使用的场景,减少用户等待加载的时间,提高了用户体验。同时在云端合理为容器分配资源,提供共享存储纹理模板,提高了计算资源和网络资源的配置效率。
附图说明
通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,并且相同或对应的标号表示相同或对应的部分,其中:
图1是示出根据本发明实施例的一种容器自动加载方法;
图2是示出根据本发明实施例的一种容器自动加载装置。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种。
应当理解,尽管在本发明实施例中可能采用术语第一、第二、第三等来描述……,但这些……不应限于这些术语。这些术语仅用来将……区分开。例如,在不脱离本发明实施例范围的情况下,第一……也可以被称为第二……,类似地,第二……也可以被称为第一……。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者装置中还存在另外的相同要素。
下面结合附图详细说明本发明的可选实施例。
实施例一、
如图1所示,一种容器自动加载方法,应用于分布式云计算系统,所述方法包括:
获取用户行为习惯数据,所述用户行为习惯数据包括用户使用时间数据、用户配置性能数据、用户场景数据,所述用户场景数据包括用户场景时长数据,用户场景评分数据,用户目标数据,用户场景近期序列;
根据用户场景数据确定用户预加载的场景内容并获取场景内容标签,根据场景内容标签和用户配置性能数据分配pod,所述pod中的容器的场景内容标签相同,所述pod中的容器对应的用户配置性能数据相同,所在工作节点内各个pod的预期带宽分配总和不超过所述工作节点的总带宽;
所述pod部署时配置有共享存储器,所述共享存储器内包含所述pod对应场景的纹理单元,所述pod中的容器通过访问接口读取所述共享存储器中的场景的纹理模版,所述纹理模版的像素步长和pod对应的用户配置性能对应;
获取用户使用时间数据,根据所述用户使用时间数据得到预测用户使用时间,在所述预测用户使用时间之前加载容器。
Pod是一个逻辑抽象概念,是创建和管理的最小单元,一个pod由一个容器或多个容器组成,pod中的容器部署在一个工作节点node上,pod中的容器共享网络资源和存储资源。
同一个场景下,可能各个容器的运行画面不同,但是一个场景下的同一个配置性能数据的纹理是可以通用的,其可以使用相同的纹理模板,用户配置相同又可以使用相同粒度的纹理,不同粒度的纹理具有不同的水平像素步长和垂直像素步长。由于一个pod是和一个场景与一个配置性能数据的组合对应,因此可以在一个pod的共享存储器域中存储该场景在该配置性能下的所有纹理模板,在该pod内的容器可以直接调用这些纹理模板,不需要再做颗粒度方面的处理。
在某一实施例中,所在工作节点内各个pod的预期带宽分配总和不超过所述工作节点的总带宽包括:
在预测时段内,确定所述工作节点内各个pod的预期带宽分配总和的最大值不大于所述工作节点的总带宽;
根据对所有用户使用时段进行预测后,获取所述预测时段内需要加载的容器和按照现有部署pod确定对应分配的pod,根据用户配置信息和pod内容器数量确定预测要分配给pod的带宽,计算预测时段内所述工作节点内各个pod的预期带宽总和的最大值是否超过所在工作节点最大带宽,若是则在预测时段前调整所述工作节点内的pod,将部分pod迁移到网络负载较低的工作节点上去。
例如,可以在当前预测下一个时间段的用户使用情况,包括预测所有用户的使用场景和对应场景和配置下用户的数量,按照当前pod分布的情况,对下一个时间段所需要使用的资源进行预测计算,具体地可以是对下一个时间段内pod内容器所需要的带宽峰值,将带宽峰值的带宽作为下一时间段的带宽资源分配给该pod,再计算工作节点当下部署的所有pod的下一时间段的带宽资源之和,当预测计算结果超出pod所在工作节点的总带宽时,需要将该节点上的部分pod部署到其他没有达到网络负载上限的工作节点上去,使得所有工作节点的网络负载不超过上限。
在某一实施例中,在所述工作节点内,混合部署网络带宽需求高和需求低的pod,将网络需求高的pod分开部署在不同节点,当需要调整工作节点内的pod时,优先迁移网络带宽需求低的pod。
例如,可以将网络负载需求较大的pod均匀布置在每一个工作节点中,这样的节点可以是场景复杂度高数据量大压缩效果不好,或者是因为配置要求较高导致传输的网络资源需求大,调整这类的pod可能导致调整后的节点仍然面临负载超限的情况,因此将调整相对负载较小的pod的部署,使得调整更为灵活。
在某一实施例中,根据用户场景数据确定给用户预加载的场景内容包括:
首先,判断接收到的用户场景数据中的用户目标数据不为空,表明用户设置了目标数据,则通过如下公式计算有
Figure 379996DEST_PATH_IMAGE001
个场景下第
Figure 725045DEST_PATH_IMAGE002
个场景的生成系数
Figure 387102DEST_PATH_IMAGE003
Figure 105659DEST_PATH_IMAGE004
,其中
Figure 294195DEST_PATH_IMAGE005
其中,
Figure 682582DEST_PATH_IMAGE006
为用户设置的第
Figure 222148DEST_PATH_IMAGE002
个场景的用户目标数据,
Figure 475887DEST_PATH_IMAGE007
为用户在的第
Figure 394296DEST_PATH_IMAGE002
个场景的用户场景评分数据,
Figure 343797DEST_PATH_IMAGE008
为场景任务在目标中的占比,
Figure 839500DEST_PATH_IMAGE009
为用户在的第
Figure 775227DEST_PATH_IMAGE002
个场景的用户场景时长数据;
将生成系数
Figure 672775DEST_PATH_IMAGE003
按照从大到小的顺序进行排序,选择排序最靠前的生成系数对应的场景内容进行预加载;例如,专业人员可以根据自己的专业特长设置不同的训练目标,确定在不同训练场景下的目标数据,各类目标数据可以是操作正确率、速度、操作精准度等等,以及根据各类项目所占的重要程度设置不同的场景权重,所述场景权重可以是标准的如测试分数占比,或者是目标教学成果的一个占比,可以由用户预先设置,也可以由系统默认生成。
判断接收到的用户场景数据中的用户目标数据为空,则选择预加载场景近期序列中对应用户场景评分数据不合格对应的场景内容,如场景近期序列中对应用户场景评分数据均合格则随机加载场景近期序列中不包括的场景内容。
例如,专业人员在近期训练了A、B、C三个场景,A和B场景中的训练成绩均达标,但是C场景不合格,那么系统选择预先加载C场景可能可以满足用户训练需求;或者用户在这三个场景下训练均达到令人满意的成绩,可以选择加载D、E或除ABC以外的其他的在专业人员训练范围以内的场景。
在某一实施例中,当检测到用户设备请求与容器停止通信连接或者接收到用户发送的结束服务指令时,及时删除该用户设备对应的容器并释放容器资源。
在某一实施例中,在预加载容器后的等待时间阈值内没有收到用户设备请求传输的指令时,删除预加载容器并释放容器资源。
由于用户训练时间一般相对固定,如课程需要,或者日常休息时间的训练等等,可以通过对用户使用时间的数据的统计分析学习来预测用户可能会使用到该云应用的时间。容器进行加载以后,按照用户的请求传输指令时,会向客户端传输对应的数据流,如果没有收到指令超过预测时间一定时间阈值后,表明用户很有可能改变了常用的习惯,本次不需要使用服务,记录并更新对应的用户行为习惯数据,这样可以当用户的常用习惯改变时,及时对预测结果反馈更新。
在某一实施例中,从所述用户设备处接收切换场景指令,所述切换场景指令中包括请求的场景内容ID和用户配置信息,根据场景内容ID获取切换场景内容标签,根据所述切换场景内容标签和配置信息找到第二pod,将当前容器迁移到第二pod中,将用户信息备份后重新加载容器到第二pod,使用第二pod共享存储器中的纹理模版对用户请求的场景进行渲染后传输。
在某一实施例中,所述pod中的容器获得的网络带宽资源相同。
在某一实施例中,在遇到系统报警后,查看系统报警指明的场景和用户配置情况,定位对应pod并对其进行恢复处理。
由于每个pod和场景和配置是对应的,可以根据报警中的具体信息快速定位到pod,进行修复和恢复处理,及时处理故障信息,提高用户体验。
通过本发明的方法可以根据用户使用数据、用户配置数据和用户场景数据,提前加载用户最有可能使用的场景,减少用户等待加载的时间,提高了用户体验。同时在云端合理为容器分配资源,提供共享存储纹理模板,提高了计算资源和网络资源的配置效率。
实施例二、
如图2所示,本发明提出的一种容器自动加载装置,为分布式云计算系统,所述装置内包含多个工作节点,每个工作节点上部署有多个pod,每个pod内可加载多个容器,用于实现容器自动加载方法。
Pod是一个逻辑抽象概念,是创建和管理的最小单元,一个pod由一个容器或多个容器组成,pod中的容器部署在一个工作节点node上,pod中的容器共享网络资源和存储资源。
处理器执行存储介质上的指令或者数据可以实现的各类功能,需要说明的是,计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
以上介绍了本发明的较佳实施方式,旨在使得本发明的精神更加清楚和便于理解,并不是为了限制本发明,凡在本发明的精神和原则之内,所做的修改、替换、改进,均应包含在本发明所附的权利要求概括的保护范围之内。

Claims (9)

1.一种容器自动加载方法,应用于分布式云计算系统,所述方法包括:
获取用户行为习惯数据,所述用户行为习惯数据包括用户使用时间数据、用户配置性能数据、用户场景数据,所述用户场景数据包括用户场景时长数据,用户场景评分数据,用户目标数据,用户场景近期序列;
根据用户场景数据确定用户预加载的场景内容并获取场景内容标签,根据场景内容标签和用户配置性能数据分配pod,所述pod中的容器的场景内容标签相同,所述pod中的容器对应的用户配置性能数据相同,所在工作节点内各个pod的预期带宽分配总和不超过所述工作节点的总带宽;
所述pod部署时配置有共享存储器,所述共享存储器内包含所述pod对应场景的纹理单元,所述pod中的容器通过访问接口读取所述共享存储器中的场景的纹理模版,所述纹理模版的像素步长和pod对应的用户配置性能对应;
获取用户使用时间数据,根据所述用户使用时间数据得到预测用户使用时间,在所述预测用户使用时间之前加载容器;
其中,根据用户场景数据确定给用户预加载的场景内容包括:
首先,判断接收到的用户场景数据中的用户目标数据不为空,表明用户设置了目标数据,则通过如下公式计算有
Figure 4356DEST_PATH_IMAGE001
个场景下第
Figure 357977DEST_PATH_IMAGE002
个场景的生成系数
Figure 31535DEST_PATH_IMAGE003
Figure 761593DEST_PATH_IMAGE004
,其中
Figure 99646DEST_PATH_IMAGE005
其中,
Figure 765114DEST_PATH_IMAGE006
为用户设置的第
Figure 50602DEST_PATH_IMAGE002
个场景的用户目标数据,
Figure 194138DEST_PATH_IMAGE007
为用户在的第
Figure 389627DEST_PATH_IMAGE002
个场景的用户场景评分数据,
Figure 350630DEST_PATH_IMAGE008
为场景任务在目标中的占比,
Figure 998780DEST_PATH_IMAGE009
为用户在的第
Figure 805062DEST_PATH_IMAGE002
个场景的用户场景时长数据;
将生成系数
Figure 855058DEST_PATH_IMAGE003
按照从大到小的顺序进行排序,选择排序最靠前的生成系数对应的场景内容进行预加载;
判断接收到的用户场景数据中的用户目标数据为空,则选择预加载场景近期序列中对应用户场景评分数据不合格对应的场景内容,如场景近期序列中对应用户场景评分数据均合格则随机加载场景近期序列中不包括的场景内容。
2.如权利要求1所述的方法,其特征在于,所在工作节点内各个pod的预期带宽分配总和不超过所述工作节点的总带宽包括:
在预测时段内,确定所述工作节点内各个pod的预期带宽分配总和的最大值不大于所述工作节点的总带宽;
根据对所有用户使用时段进行预测后,获取所述预测时段内需要加载的容器和按照现有部署pod确定对应分配的pod,根据用户配置信息和pod内容器数量确定预测要分配给pod的带宽,计算预测时段内所述工作节点内各个pod的预期带宽总和的最大值是否超过所在工作节点最大带宽,若是则在预测时段前调整所述工作节点内的pod,将部分pod迁移到网络负载较低的工作节点上去。
3.如权利要求2所述的方法,其特征在于,
在所述工作节点内,混合部署网络带宽需求高和需求低的pod,将网络需求高的pod分开部署在不同节点,当需要调整工作节点内的pod时,优先迁移网络带宽需求低的pod。
4.如权利要求1所述的方法,其特征在于,
当检测到用户设备请求与容器停止通信连接或者接收到用户发送的结束服务指令时,及时删除该用户设备对应的容器并释放容器资源。
5.如权利要求1所述的方法,其特征在于,
在预加载容器后的等待时间阈值内没有收到用户设备请求传输的指令时,删除预加载容器并释放容器资源。
6.如权利要求5所述的方法,其特征在于,从所述用户设备处接收切换场景指令,所述切换场景指令中包括请求的场景内容ID和用户配置信息,根据场景内容ID获取切换场景内容标签,根据所述切换场景内容标签和配置信息找到第二pod,将当前容器迁移到第二pod中,将用户信息备份后重新加载容器到第二pod,使用第二pod共享存储器中的纹理模版对用户请求的场景进行渲染后传输。
7.如权利要求1所述的方法,其特征在于,所述pod中的容器获得的网络带宽资源相同。
8.如权利要求1所述的方法,其特征在于,
在遇到系统报警后,查看系统报警指明的场景和用户配置情况,定位对应pod并对其进行恢复处理。
9.一种容器自动加载装置,为分布式云计算系统,所述装置内包含多个工作节点,每个工作节点上部署有多个pod,每个pod内可加载多个容器,用于实现权利要求1-8之一所述的容器自动加载方法。
CN202211325601.0A 2022-10-27 2022-10-27 一种容器自动加载方法和装置 Active CN115373764B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211325601.0A CN115373764B (zh) 2022-10-27 2022-10-27 一种容器自动加载方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211325601.0A CN115373764B (zh) 2022-10-27 2022-10-27 一种容器自动加载方法和装置

Publications (2)

Publication Number Publication Date
CN115373764A CN115373764A (zh) 2022-11-22
CN115373764B true CN115373764B (zh) 2022-12-27

Family

ID=84073330

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211325601.0A Active CN115373764B (zh) 2022-10-27 2022-10-27 一种容器自动加载方法和装置

Country Status (1)

Country Link
CN (1) CN115373764B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116112429B (zh) * 2022-12-29 2024-09-06 国网河南省电力公司信息通信公司 基于标签路由策略的容器清洗方法、装置及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210072966A1 (en) * 2019-09-05 2021-03-11 International Business Machines Corporation Method and system for service rolling-updating in a container orchestrator system
CN112306636B (zh) * 2020-10-28 2023-06-16 武汉大势智慧科技有限公司 云渲染平台及其智能调度方法
CN114356543A (zh) * 2021-12-02 2022-04-15 国电南瑞科技股份有限公司 一种基于Kubernetes的多租户机器学习任务资源调度方法
CN114721737A (zh) * 2022-03-28 2022-07-08 京东方科技集团股份有限公司 场景数据的管理方法、装置、电子设备及可读介质
CN114780244A (zh) * 2022-04-29 2022-07-22 深圳市赛为智能股份有限公司 容器云资源弹性分配方法、装置、计算机设备及介质

Also Published As

Publication number Publication date
CN115373764A (zh) 2022-11-22

Similar Documents

Publication Publication Date Title
US10740136B2 (en) Automatic virtual machine termination in a cloud
CN112667376A (zh) 任务调度处理方法、装置、计算机设备及存储介质
KR20120102664A (ko) 미래 사용 추정에 기반한 저장 메모리 할당
CN107451853B (zh) 一种红包实时派发的方法、装置、系统及存储介质
CN115373764B (zh) 一种容器自动加载方法和装置
CN112433920A (zh) 一种埋点数据上报方法、装置、设备及介质
CN110912949B (zh) 位点提交方法和装置
CN112148468A (zh) 一种资源调度方法、装置、电子设备及存储介质
CN110750350B (zh) 一种大资源调度方法、系统、装置及可读存储介质
CN109862069B (zh) 消息处理方法和装置
CN108616576B (zh) 一种调度应用服务器的方法和装置
US8954974B1 (en) Adaptive lock list searching of waiting threads
CN115686825A (zh) 资源管理方法、装置、服务器及存储介质
CN114936089A (zh) 资源调度方法、系统、设备及存储介质
CN115082911A (zh) 一种视频分析方法、装置及视频处理设备
CN114090201A (zh) 资源调度方法、装置、设备及存储介质
CN111160283A (zh) 一种数据接入方法、装置、设备和介质
CN113784174B (zh) 生成视频预览动态图的方法、装置、电子设备及介质
CN116909758B (zh) 算力任务的处理方法、装置及电子设备
US11687269B2 (en) Determining data copy resources
CN109067690B (zh) 离线计算结果数据的推送方法及装置
CN112291292B (zh) 数据存储方法、装置、设备和介质
CN115774615A (zh) 资源调度方法、装置、计算机设备和可读介质
CN115686744A (zh) 数据处理方法、装置、设备及存储介质
CN117130860A (zh) 功能执行过程的数据处理方法、装置及存储介质

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
GR01 Patent grant
GR01 Patent grant