CN114020464B - 一种动态处理虚拟化资源的方法、装置及存储介质 - Google Patents
一种动态处理虚拟化资源的方法、装置及存储介质 Download PDFInfo
- Publication number
- CN114020464B CN114020464B CN202111304867.2A CN202111304867A CN114020464B CN 114020464 B CN114020464 B CN 114020464B CN 202111304867 A CN202111304867 A CN 202111304867A CN 114020464 B CN114020464 B CN 114020464B
- Authority
- CN
- China
- Prior art keywords
- message
- processing message
- processing
- type
- target processing
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
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 Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种动态处理虚拟化资源的方法、装置及存储介质,所述方法包括:在获取到至少一个处理请求信息时,基于每个处理请求信息及其对应的请求类型,生成对应类型的处理消息,并将所述处理消息发送给所述消息中间件,其中所述处理消息携带生存时间;当监听到所述消息中间件中有至少一个处理消息达到其对应的生存时间时,发送目标处理消息请求至消息中间件,以获取达到其对应的生存时间的目标处理消息;对所述目标处理消息进行解析,并基于解析结果及对应的处理消息类型发送相应的控制指令,以对底层虚拟资源进行创建或删除操作。通过所述方法有效提高了处理虚拟化资源的效率。
Description
技术领域
本发明涉及数据处理技术领域,尤涉及一种动态处理虚拟化资源的方法、装置及存储介质。
背景技术
云管平台可以纳管各类异构资源,比如,如按硬件资源划分,可纳管X86平台、小型机平台(Power、Itanium、Spark),按纳管的虚拟化平台划分,可纳管ESXi、Xen、Hyper-v、PowerVM等等,特别是“裸金属云”这个概念广泛出现之后,上述这些硬件、软件的,抑或是各类不同虚拟化平台的资源,几乎都可纳管到一起。云管平台通过接口对接方式,以实现对虚拟化资源的管理。
而在现有的云管平台处理虚拟化资源技术中,通常是云管平台定义一个虚拟资源的生效时间,并进行入库,通过轮询的方式,扫描数据库表,对对应的虚拟资源进行处理,包括创建虚拟资源、删除虚拟资源。而轮询的方式会占用较大的服务资源,且大量的数据集,对服务器的内存消耗较大;其次,在轮询情况下,需要对数据库进行频繁的查询,数据量较大的情况下,处理速度会受到数据传输的限制;而轮询的方式会产生一定的延迟,若要延迟小,则需要消耗更多的资源,若延迟较大,相应的实效性差。且随着定时业务的增多和细化,每个业务都要对表进行扫描,引发查询的浪费。
发明内容
有鉴于此,本发明提供了一种动态处理虚拟化资源的方法、装置及存储介质,以解决现有技术中动态处理虚拟化资源的效率相对较低的技术问题。
第一方面,根据本发明实施例提供的一种动态处理虚拟化资源的方法,在连接消息中间件的云管平台系统中,应用于云管平台,所述方法包括:
在获取到至少一个处理请求信息时,基于每个处理请求信息及其对应的请求类型,生成对应类型的处理消息,并将所述处理消息发送给所述消息中间件,其中所述处理消息携带生存时间;
当监听到所述消息中间件中有至少一个处理消息达到其对应的生存时间时,发送目标处理消息请求至消息中间件,以获取达到其对应的生存时间的目标处理消息;
对所述目标处理消息进行解析,并基于解析结果及对应的处理消息类型发送相应的控制指令,以对底层虚拟资源进行创建或删除操作。
优选地,所述请求类型包括创建和删除;
在获取到至少一个处理请求信息时,基于每个处理请求信息及其对应的请求类型,生成对应类型的处理消息,包括:
针对获取到的处理请求信息进行解析,得到对应的请求类型;
基于每个处理请求信息及其对应的请求类型,生成对应类型的处理消息。
优选地,所述对所述目标处理消息进行解析,并基于解析结果及对应的处理消息类型发送相应的控制指令,以对底层虚拟资源进行创建或删除操作,包括:
对所述目标处理消息进行解析,确定目标处理消息对应的类型;
当所述目标处理消息对应的类型为创建类型时,第一消费者生成所述目标处理消息对应的创建控制命令,并将所述创建控制命令发送至中间件,以对底层虚拟资源进行创建操作;
当所述目标处理消息对应的类型为删除类型时,第二消费者生成所述目标处理消息对应的删除控制命令,并将所述删除控制命令发送至中间件,以对底层虚拟资源进行删除操作。
第二方面,根据本发明实施例提供的一种动态处理虚拟化资源的方法,在连接消息中间件的云管平台系统中,应由于消息中间件,所述方法包括:
接收云管平台系统发送的处理消息;所述处理消息中携带生存时间;
当有至少一个处理消息达到其对应的生存时间时,接收云管平台发送的目标处理消息请求,将达到其对应的生存时间的目标处理消息发送至云管平台。
优选地,所述方法还包括:
将延迟队列交换机与虚拟资源删除延迟队列基于第一路由标识进行绑定;以及
将延迟队列交换机与虚拟资源创建延迟队列基于第二路由标识进行绑定。
优选地,所述处理消息中携带有消息类型;
当所述处理消息的类型为“创建”类型时:
将所述处理消息通过延迟队列交换机存储至虚拟资源创建延迟队列;
当有至少一个处理消息达到其对应的生存时间时,接收云管平台发送的目标处理消息请求,将达到其对应的生存时间的目标处理消息发送至云管平台,包括:
当虚拟资源创建延迟队列中的至少一个处理消息达到其对应的生存时间时,接收云管平台发送的目标处理消息请求,将达到其对应的生存时间的目标处理消息通过死信队列交换机放入虚拟资源创建死信队列;
当所述处理消息的类型为“删除”类型时:
将所述处理消息通过延迟队列交换机存储至虚拟资源删除延迟队列;
所述当有至少一个处理消息达到其对应的生存时间时,接收云管平台发送的目标处理消息请求,将达到其对应的生存时间的目标处理消息发送至云管平台,包括:
当虚拟资源删除延迟队列中的至少一个处理消息达到其对应的生存时间时,接收云管平台发送的目标处理消息请求,将达到其对应的生存时间的目标处理消息通过死信队列交换机放入虚拟资源删除死信队列。
第三方面,根据本发明实施例提供的一种动态处理虚拟化资源的装置,包括:
生成模块,用于在获取到至少一个处理请求信息时,基于每个处理请求信息及其对应的请求类型,生成对应类型的处理消息,并将所述处理消息发送给所述消息中间件,其中所述处理消息携带生存时间;
获取模块,用于当监听到所述消息中间件中有至少一个处理消息达到其对应的生存时间时,发送目标处理消息请求至消息中间件,以获取达到其对应的生存时间的目标处理消息;
处理模块,用于对所述目标处理消息进行解析,并基于解析结果及对应的处理消息类型发送相应的控制指令,以对底层虚拟资源进行创建或删除操作。
第四方面,根据本发明实施例提供的一种动态处理虚拟化资源的装置,包括:
接收模块,用于接收云管平台系统发送的处理消息;所述处理消息中携带生存时间;
反馈模块,用于当有至少一个处理消息达到其对应的生存时间时,接收云管平台发送的目标处理消息请求,将达到其对应的生存时间的目标处理消息发送至云管平台。
第五方面,根据本发明实施例提供的一种动态处理虚拟化资源的装置,包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而实现第一方面或第二方面中任一项所述的动态处理虚拟化资源的方法。
第六方面,根据本发明实施例提供的一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储有计算机指令,所述计算机指令被处理器执行时实现第一方面或第二方面中任一项所述的动态处理虚拟化资源的方法。
本发明实施例提供的动态处理虚拟化资源的方法、装置及存储介质,至少具有如下有益效果:
本发明实施例提供的动态处理虚拟化资源的方法、装置及存储介质,可以通过云管平台基于处理请求生成处理消息,其中生成的处理消息用于后续被获取,并作为处理虚拟化资源的依据。将携带有生存时间的处理消息发送至消息中间件,处理消息在消息中间件存续对应的生存时间,通过发送获取消息的请求从消息中间件中获取到消息,并获取到的目标消息进行分析,进而处理虚拟化资源。通过云管平台将处理消息发送给消息中间件,并在对应的时间从消息中间件取得相应的目标处理消息,利用消息中间件的持久化特性流转处理消息,不必将控制指令直接放入数据库中,通过轮询控制指令的方式处理虚拟化资源,减少了服务器的内存占用,避免了轮询数据库的操作,减少了资源的消耗。且相比于轮询带来的延迟,发送获取请求即可获得对应的处理消息,本实施例延迟更低、获取准确性高,提高了处理效率。且每个处理需求对应的处理过程都是相对对立的,互不干涉,更便于动态的精细化处理虚拟资源,提高了处理虚拟化资源的管理效率。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种连接消息中间件的云管平台系统的框图;
图2为本发明实施例提供的一种动态处理虚拟化资源的方法流程图;
图3为本发明实施例提供的又一种动态处理虚拟化资源的方法流程图;
图4为本发明实施例提供的另一种动态处理虚拟化资源的方法流程图;
图5为本发明实施例提供的一种动态处理虚拟化资源的装置的框图;
图6为本发明实施例提供的另一种动态处理虚拟化资源的装置的框图;
图7为本发明实施例提供的一种动态处理虚拟化资源的装置的示意图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
实施例1
云管资源服务是云管平台管理底层虚拟化资源的一个服务,现有的管理方法中,例如对底层虚拟资源的创建、删除,通常是利用云管资源服务定义管理对应资源的指令,并将该指令放入数据库,通过轮询数据库,扫描数据库表,进而可以获取到对应的指令,进行动态的管理。而通过轮询的方式,会占用服务资源,且当需要轮询的数据量较大时,效率相对较低,而对每个指令都需要对数据库表进行扫描,造成轮询浪费,效率较低。
因此,本申请实施例提供一种动态处理虚拟化资源的方法,图1是一种连接消息中间件的云管平台系统的框图。图1中,云管平台和虚拟化资源连接,云管平台中包含有相应的管理资源的服务,可以用于生成对应的处理虚拟化资源的指令消息,并可依据对应的指令消息,处理虚拟化资源。云管平台和消息中间件连接,云管平台在接收到请求消息之后生成对应的处理消息,并将处理消息传输给消息中间件,处理消息在消息中间件中流转并在到达生存时间(TTL)后,反馈给云管平台。图1中的消息中间件可以为RabbitMQ,主要利用RabbitMQ的持久化特性。如以KVM中为云主机创建安全组规则为例,需要先在云管平台提前创建好云主机,并绑定好网卡和安全组,则云管平台生成的对应的消息,应当基于用户入库安全组规则及RabbitMQ消息中间件规则。
图2为本发明实施例提供的一种动态处理虚拟化资源的方法的流程图,如图2所示,首先获取虚拟化资源的处理请求信息,生成相应的处理消息,并发送至消息中间件;当处理消息在消息中间件中达到其生存时间时,发送消息获取请求,获取消息中间件反馈的目标消息,进而解析目标消息,根据目标消息的解析结果发出相应的控制指令以对虚拟化资源进行处理,从而动态处理虚拟化资源。
在此指出,虽然下文描述的过程包括以特定的顺序出现的多个操作,但是应该清楚地了解到,这些过程也可以包括更多或者更少的操作,这些操作可以顺序执行或者并行执行。
本实施例提供了一种动态处理虚拟化资源的方法,在连接消息中间件的云管平台系统中,应用于云管平台,参见图2所示,所述方法包括如下步骤:
步骤S101、在获取到至少一个处理请求信息时,基于每个处理请求信息及其对应的请求类型,生成对应类型的处理消息,并将所述处理消息发送给所述消息中间件,其中所述处理消息携带生存时间。
在上述实施方式中,具体地,示例1,在KVM中,为云主机创建安全组规则,处理对应的虚拟化资源。在云管平台创建好云主机,绑定好网卡和安全组后,用户需求为:在八点到十八点开启22端口,能够正常的ssh连接。对应获取到一个在八点创建安全组规则的第一处理请求信息和一个在十八点删除安全组规则的第二处理请求信息,在八点创建安全组规则的第一处理请求信息对应“创建”类型,在十八点删除安全组规则的第二处理请求信息对应“删除”类型,则将生成对应的创建安全组规则的第一处理消息发送给消息中间件,及将生成对应的删除安全组规则的第二处理消息发送给消息中间件。其中创建安全组规则的第一处理消息携带的生存时间,基于第一处理消息生成的时间和第一处理请求信息中的“八点”生成。同理,删除安全组规则的第二处理消息同样携带的生存时间,基于第一处理消息生成的时间和第二处理请求信息中的“十八点”生成。例如,若是在零点时获取到对应的创建处理请求信息(第一处理请求信息),并同时生成创建安全组规则的处理消息,则对应的生存时间为八点减去零点,即创建安全组规则的第一处理消息的生存时间为28800秒;若是在零点时获取到对应的删除处理请求信息(第二处理请求信息),并同时生成删除安全组规则的第二处理消息,则对应的生存时间为十八点减去零点,即删除安全组规则的第二处理消息的生存时间为64800秒;又如,若是在六点时获取到对应的创建处理请求信息(第一处理请求信息),并同时生成创建安全组规则的第一处理消息,则对应的生存时间为八点减去六点,即创建安全组规则的第一处理消息的生存时间为7200秒;若是在六点时获取到对应的删除处理请求信息(第二处理请求信息),并同时生成删除安全组规则的第二处理消息,则对应的生存时间为十八点减去六点,即删除安全组规则的第二处理消息的生存时间为43200秒;又如,若是在七点时获取到对应的创建处理请求信息(第一处理请求信息),并同时生成创建安全组规则的第一处理消息,则对应的生存时间为八点减去七点,即创建安全组规则的第一处理消息的生存时间为3600秒;若是在十七点时获取到对应的删除处理请求信息(第二处理请求信息),并同时生成删除安全组规则的第二处理消息,则对应的生存时间为十八点减去十七点,即删除安全组规则的第二处理消息的生存时间为3600秒。
步骤S102、当监听到所述消息中间件中有至少一个处理消息达到其对应的生存时间时,发送目标处理消息请求至消息中间件,以获取达到其对应的生存时间的目标处理消息。
在本申请实施例中,在云管平台设置有监听模块,进而对消息中间件中的处理消息进行监听,当监听到消息中间件中有处理消息到达其对应的生存时间(TTL)时,便主动发送请求消息,进而获取到达其对应的生存时间的处理消息。如下,列举几个具体实施例进行阐述:
在上述实施方式中,具体地,示例2,以示例1中的零点时获取到对应的创建处理请求信息、删除处理请求信息为例,对应创建安全组规则的第一处理消息的生存时间为28800秒,对应删除安全组规则的第二处理消息的生存时间为64800秒,当创建安全组规则的的第一处理消息达到对应的生存时间28800秒时,即就是于八点时,发送对应的获取创建安全组规则的第一处理消息的请求信息至消息中间件,进而获取到对应的创建安全组规则的第一处理消息;当删除安全组规则的的第二处理消息达到对应的生存时间64800秒时,即就是于十八点时,发送对应的获取删除安全组规则的第二处理消息的请求信息至消息中间件,进而获取到对应的删除安全组规则的第二处理消息。
步骤S103、对所述目标处理消息进行解析,并基于解析结果及对应的处理消息类型发送相应的控制指令,以对底层虚拟资源进行创建或删除操作。
在本申请实施例中,云管平台在获取到其请求的目标消息之后,对请求到的目标处理消息进行解析,具体的,可解析目标消息对应的操作指令为创建操作的指令还是删除操作的指令,如果解析目标消息对应的操作指令为创建操作的指令,则发送对底层虚拟资源进行创建的操作指令,以对底层虚拟资源进行创建操作;相反的,如果解析目标消息对应的操作指令为删除操作的指令,则发送对底层虚拟资源进行删除的操作指令,以对底层虚拟资源进行删除操作。如下,列举几个具体实施例进行阐述:
在上述实施方式中,具体地,示例3,基于示例2,于八点时获取到消息中间件反馈的创建安全组规则的第一处理消息,对该创建安全组规则的第一处理消息进行解析,并确定第一处理消息对应的类型为“创建”类型后,首先可通过访问“创建22端口安全组规则”为云管平台控制的云主机授予更多的虚拟资源访问权限,之后控制实现云主机和22端口的安全组的进行正常的ssh连接。再者,于十八点时获取到消息中间件反馈的删除安全组规则的第二处理消息,对该第二处理消息进行解析,并确定第一处理消息对应的类型为“创建”类型后,首先可通过访问“删除22端口安全组规则”为云管平台控制的云主机去除对应的虚拟资源访问权限,同时控制实现云主机和22端口的安全组的断开正常的ssh连接。
应当说明的是,步骤S103中所述的对底层虚拟资源进行创建或删除操作仅是对处理虚拟化资源的概括,并不限制于具体的创建和删除。即上述示例中仅以在KVM中,云主机连接或断开安全组作为虚拟资源的“创建”和“删除”,而本申请中并不限制创建和删除的内容。对虚拟资源的处理还可以是对相应的虚拟化数据资源进行创建和删除,例如在22端口对应安全组连接后,可以对安全组内存储的数据进行处理,如创建数据、删除数据。
综上所述,本申请实施例通过云管平台基于处理请求消息生成处理消息,其中生成的处理消息用于后续被获取,并作为处理虚拟化资源的依据。将携带有生存时间的处理消息发送至消息中间件,处理消息在消息中间件存续对应的生存时间,通过发送获取消息的请求从消息中间件中获取到到达生存时间的目标处理消息,并获取到的目标处理消息进行分析,进而处理虚拟化资源。本方案,通过云管平台将处理消息发送给消息中间件,并在对应的时间从消息中间件取得相应的目标处理消息,利用消息中间件的持久化特性流转处理消息,不必将控制指令直接放入数据库中,通过轮询控制指令的方式处理虚拟化资源,减少了服务器的内存占用,避免了轮询数据库的操作,减少了资源的消耗。且相比于轮询带来的延迟,发送获取请求即可获得对应的处理消息,本实施例延迟更低、获取准确性高,提高了处理效率。且每个处理需求对应的处理过程都是相对对立的,互不干涉,更便于动态的精细化处理虚拟资源,还可以对虚拟资源的周期性处理进行高效地管理。
除此之外,本申请中的消息中间件还可对处理消息进行备份,即在消息中间件在接收到处理消息时对其进行备份,同时在内部流转,因此即使因突发情况云管平台在处理过程突然宕机时,在开机后依然可在此从消息中间件中获取到处理消息并继续执行对处理消息解析的过程,因此,本方案提高了处理虚拟化资源的可用性,有效避免了处理过程的处理消息丢失,进而提高了处理虚拟化资源过程中数据安全性,保障了虚拟化资源处理的准确性。
进一步地,所述请求类型包括创建和删除;步骤S101包括:
针对获取到的处理请求信息进行解析,得到对应的请求类型;
基于每个处理请求信息及其对应的请求类型,生成对应类型的处理消息。
图3为本发明实施例提供的又一种动态处理虚拟化资源的方法的流程图,进一步地步骤S103、包括:
步骤S1031、对所述目标处理消息进行解析,确定目标处理消息对应的类型;
步骤S1032、当所述目标处理消息对应的类型为创建类型时,第一消费者生成所述目标处理消息对应的创建控制命令,并将所述创建控制命令发送至中间件,以对底层虚拟资源进行创建操作;
步骤S1033、当所述目标处理消息对应的类型为删除类型时,第二消费者生成所述目标处理消息对应的删除控制命令,并将所述删除控制命令发送至中间件,以对底层虚拟资源进行删除操作。
在本申请实施例中,在云管平台设置有不同类型的消费者,进而对不同类型的处理消息生成相应的控制指令。如上所述,可设有第一消费者,根据类型为“创建”的处理消息生成相应的“创建”控制命令,同样,设有第二消费者,根据类型为“创建”的处理消息生成相应的“删除”控制命令。
进一步地,设定时间周期,周期性地执行上述步骤S101-S103。以便于对动态处理虚拟化资源的管理,具体地,如示例1中的用户需求为每日开启和关闭相应的端口,则可以设定周期为24小时,该周期的初始时间为每日零点。
图4为本发明实施例提供的另一种动态处理虚拟化资源的方法的流程图,如图4所示,接收云管平台发送的处理消息,处理消息在消息中间件内流转,当至少一个处理消息达到其对应的生存时间时,接收云管平台发送的目标处理消息获取请求,并将目标处理消息发送至云管平台。虽然下文描述的过程包括以特定的顺序出现的多个操作,但是应该清楚地了解到,这些过程也可以包括更多或者更少的操作,这些操作可以顺序执行或者并行执行。
本实施例提供了另一种动态处理虚拟化资源的方法,在连接消息中间件的云管平台系统中,应用于消息中间件,参见图4所示,所述方法包括如下步骤:
步骤S201、接收云管平台系统发送的处理消息;所述处理消息中携带生存时间。
在上述实施方式中,具体地,消息中间件以RabbitMQ为例,示例4,以示例1中的零点时获取到对应的创建处理请求信息、删除处理请求信息为例,对应创建安全组规则的处理消息的生存时间为28800秒,对应删除安全组规则的处理消息的生存时间为64800秒,对应接收到的处理消息为创建处理请求信息携带28800秒生存时间和对应删除处理请求信息携带64800秒生存时间。
步骤S201、当有至少一个处理消息达到其对应的生存时间时,接收云管平台发送的目标处理消息请求,将达到其对应的生存时间的目标处理消息发送至云管平台。
在上述实施方式中,具体地,示例5,基于示例4,创建处理请求信息生存28800秒时,接收云管平台发送的获取创建处理消息的请求,将创建处理请求信息发送至云管平台;删除处理请求信息生存64800秒时,接收云管平台发送的获取删除处理消息的请求,将删除处理请求信息发送至云管平台。基于RabbitMQ消息中间件的持久化特性,使得删除处理请求信息生存64800秒、创建处理请求信息生存28800秒。
在上述实施方式中,通过消息中间件对处理消息进行存续,并在对应的时间基于云管平台的请求将对应的处理消息发送至云管平台,以便云管平台进行处理消息进行解析,进而处理虚拟化资源。
进一步地,所述方法还包括:
1)将延迟队列交换机与虚拟资源删除延迟队列基于第一路由标识进行绑定;以及
2)将延迟队列交换机与虚拟资源创建延迟队列基于第二路由标识进行绑定。
在上述实施方式中,具体地,例如以routingKeyF路由规则将延迟队列交换机与虚拟资源创建延迟队列进行绑定,以routingKeyD路由规则将延迟队列交换机与虚拟资源删除延迟队列进行绑定。将创建处理请求信息通过延迟队列交换机放入虚拟资源创建延迟队列,将删除处理请求信息通过延迟队列交换机放入虚拟资源删除延迟队列。
进一步地,所述处理消息中携带有消息类型;
当所述处理消息的类型为“创建”类型时:
将所述处理消息通过延迟队列交换机存储至虚拟资源创建延迟队列;
当有至少一个处理消息达到其对应的生存时间时,接收云管平台发送的目标处理消息请求,将达到其对应的生存时间的目标处理消息发送至云管平台,包括:
当虚拟资源创建延迟队列中的至少一个处理消息达到其对应的生存时间时,接收云管平台发送的目标处理消息请求,将达到其对应的生存时间的目标处理消息通过死信队列交换机放入虚拟资源创建死信队列;
当所述处理消息的类型为“删除”类型时:
将所述处理消息通过延迟队列交换机存储至虚拟资源删除延迟队列;
所述当有至少一个处理消息达到其对应的生存时间时,接收云管平台发送的目标处理消息请求,将达到其对应的生存时间的目标处理消息发送至云管平台,包括:
当虚拟资源删除延迟队列中的至少一个处理消息达到其对应的生存时间时,接收云管平台发送的目标处理消息请求,将达到其对应的生存时间的目标处理消息通过死信队列交换机放入虚拟资源删除死信队列。
在上述实施方式中,具体地,每个延时队列均绑定零个消费者,每个延时队列中的各个消息均未被消费,每个消息在存续对应的生存时间后自然过期死亡,消息在死亡后通过死信队列交换机放入对应的死信队列;例如,以dead routingKeyF路由规则将死信队列交换机与虚拟资源创建死信队列进行绑定,以dead routingKeyD路由规则将死信队列交换机与虚拟资源删除死信队列进行绑定。
利用消息中间件的持久性特性,控制处理消息的存续、流转,在存续对应的生存生存时间后将对应的目标消息反馈给云管平台,通过消息中间件的对消息的处理,避免了轮询处理指令的步骤,减少了云管平台资源的消耗,且消息中间件反馈目标消息准确,延迟相对较低,提高了处理虚拟化资源的效率。
本实施例提供了再一种动态处理虚拟化资源的方法,包括如下步骤:
云管平台,在获取到至少一个处理请求信息时,基于每个处理请求信息及其对应的请求类型,生成对应类型的处理消息,并将所述处理消息发送给消息中间件,其中所述处理消息携带生存时间;
所述消息中间件,接收所述云管平台发送的处理消息;
所述云管平台,当监听到所述消息中间件中有至少一个处理消息达到其对应的生存时间时,发送目标处理消息请求至所述消息中间件,以获取达到其对应的生存时间的目标处理消息;
所述消息中间件,当有至少一个处理消息达到其对应的生存时间时,接收云管平台发送的目标处理消息请求,将达到其对应的生存时间的目标处理消息发送至所述云管平台;
所述云管平台,对所述目标处理消息进行解析,并基于解析结果及对应的处理消息类型发送相应的控制指令,以对底层虚拟资源进行创建或删除操作。
实施例2
图5是本发明实施例提供的一种动态处理虚拟化资源的装置的框图,本实施例以该装置应用于图5所示的动态处理虚拟化资源的方法进行说明。该装置至少包括以下几个模块:
生成模块51,用于在获取到至少一个处理请求信息时,基于每个处理请求信息及其对应的请求类型,生成对应类型的处理消息,并将所述处理消息发送给所述消息中间件,其中所述处理消息携带生存时间;
获取模块52,用于当监听到所述消息中间件中有至少一个处理消息达到其对应的生存时间时,发送目标处理消息请求至消息中间件,以获取达到其对应的生存时间的目标处理消息;
处理模块53,用于对所述目标处理消息进行解析,并基于解析结果及对应的处理消息类型发送相应的控制指令,以对底层虚拟资源进行创建或删除操作。
图6是本发明实施例提供的另一种动态处理虚拟化资源的装置的框图,本实施例以该装置应用于图6所示的动态处理虚拟化资源的方法进行说明。该装置至少包括以下几个模块:
接收模块61,用于接收云管平台系统发送的处理消息;所述处理消息中携带生存时间;
反馈模块62,用于当有至少一个处理消息达到其对应的生存时间时,接收云管平台发送的目标处理消息请求,将达到其对应的生存时间的目标处理消息发送至云管平台。
本申请实施例提供的动态处理虚拟化资源的装置,可用于如上实施例1中执行的方法,相关细节参考上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
需要说明的是:上述实施例中提供的动态处理虚拟化资源的装置在进行动态处理虚拟化资源时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将动态处理虚拟化资源的装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的动态处理虚拟化资源的装置与动态处理虚拟化资源的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
实施例3
本发明实施例提供的一种动态处理虚拟化资源的装置,用于动态处理虚拟化资源的,如图7所示,该电子设备包括处理器701和存储器702,其中处理器701和存储器702可以通过总线或者其他方式连接,图5中以通过总线连接为例。
处理器701可以为中央处理器(Central Processing Unit,CPU)也可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、图形处理器(GraphicsProcessing Unit,GPU)、嵌入式神经网络处理器(Neural-network Processing Unit,NPU)或者其他专用的深度学习协处理器、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
存储器702作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中动态处理虚拟化资源的方法对应的程序指令/模块。处理器701通过运行存储在存储器702中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例1中的动态处理虚拟化资源的方法。
存储器702可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器701所创建的数据等。此外,存储器702可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器702可选包括相对于处理器701远程设置的存储器,这些远程存储器可以通过网络连接至处理器701。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述一个或者多个模块存储在所述存储器702中,当被所述处理器701执行时,执行如图1所示动态处理虚拟化资源的方法。
本发明实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的动态处理虚拟化资源的方法。其中,所述非暂态计算机可读存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(Random Access Memory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-StateDrive,SSD)等;所述非暂态计算机可读存储介质还可以包括上述种类的存储器的组合。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置或非暂态计算机可读存储介质均可涉及或包含计算机程序产品。
因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
显然,以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (9)
1.一种动态处理虚拟化资源的方法,在连接消息中间件的云管平台系统中,应用于云管平台,其特征在于,所述方法包括:
在获取到至少一个处理请求信息时,基于每个处理请求信息及其对应的请求类型,生成对应类型的处理消息,并将所述处理消息发送给所述消息中间件,其中所述处理消息携带生存时间;
当监听到所述消息中间件中有至少一个处理消息达到其对应的生存时间时,发送目标处理消息请求至消息中间件,以获取达到其对应的生存时间的目标处理消息;
对所述目标处理消息进行解析,并基于解析结果及对应的处理消息类型发送相应的控制指令,以对底层虚拟资源进行创建或删除操作;
所述对所述目标处理消息进行解析,并基于解析结果及对应的处理消息类型发送相应的控制指令,以对底层虚拟资源进行创建或删除操作,包括:
对所述目标处理消息进行解析,确定目标处理消息对应的类型;
当所述目标处理消息对应的类型为创建类型时,第一消费者生成所述目标处理消息对应的创建控制命令,并将所述创建控制命令发送至中间件,以对底层虚拟资源进行创建操作;
当所述目标处理消息对应的类型为删除类型时,第二消费者生成所述目标处理消息对应的删除控制命令,并将所述删除控制命令发送至中间件,以对底层虚拟资源进行删除操作。
2.根据权利要求1所述的动态处理虚拟化资源的方法,其特征在于,
所述请求类型包括创建和删除;
在获取到至少一个处理请求信息时,基于每个处理请求信息及其对应的请求类型,生成对应类型的处理消息,包括:
针对获取到的处理请求信息进行解析,得到对应的请求类型;
基于每个处理请求信息及其对应的请求类型,生成对应类型的处理消息。
3.一种动态处理虚拟化资源的方法,应用于消息中间件,其特征在于,所述方法,包括:
接收云管平台系统发送的处理消息;所述处理消息中携带生存时间;所述云管平台获取到至少一个处理请求信息时,基于每个处理请求信息及其对应的请求类型,生成对应类型的所述处理消息;
当有至少一个处理消息达到其对应的生存时间时,接收云管平台发送的目标处理消息请求,将达到其对应的生存时间的目标处理消息发送至云管平台;
所述云管平台对所述目标处理消息进行解析,并基于解析结果及对应的处理消息类型发送相应的控制指令,以对底层虚拟资源进行创建或删除操作;
所述云管平台对所述目标处理消息进行解析,并基于解析结果及对应的处理消息类型发送相应的控制指令,以对底层虚拟资源进行创建或删除操作,包括:
所述云管平台对所述目标处理消息进行解析,确定所述目标处理消息对应的类型;
当所述目标处理消息对应的类型为创建类型时,第一消费者生成所述目标处理消息对应的创建控制命令,并将所述创建控制命令发送至中间件,以对底层虚拟资源进行创建操作;
当所述目标处理消息对应的类型为删除类型时,第二消费者生成所述目标处理消息对应的删除控制命令,并将所述删除控制命令发送至中间件,以对底层虚拟资源进行删除操作。
4.根据权利要求3所述的动态处理虚拟化资源的方法,其特征在于,所述方法还包括:
将延迟队列交换机与虚拟资源删除延迟队列基于第一路由标识进行绑定;以及
将延迟队列交换机与虚拟资源创建延迟队列基于第二路由标识进行绑定。
5.根据权利要求4所述的动态处理虚拟化资源的方法,其特征在于,所述处理消息中携带有消息类型;
当所述处理消息的类型为 “创建”类型时:
将所述处理消息通过延迟队列交换机存储至虚拟资源创建延迟队列;
当有至少一个处理消息达到其对应的生存时间时,接收云管平台发送的目标处理消息请求,将达到其对应的生存时间的目标处理消息发送至云管平台,包括:
当虚拟资源创建延迟队列中的至少一个处理消息达到其对应的生存时间时,接收云管平台发送的目标处理消息请求,将达到其对应的生存时间的目标处理消息通过死信队列交换机放入虚拟资源创建死信队列;
当所述处理消息的类型为 “删除”类型时:
将所述处理消息通过延迟队列交换机存储至虚拟资源删除延迟队列;
所述当有至少一个处理消息达到其对应的生存时间时,接收云管平台发送的目标处理消息请求,将达到其对应的生存时间的目标处理消息发送至云管平台,包括:
当虚拟资源删除延迟队列中的至少一个处理消息达到其对应的生存时间时,接收云管平台发送的目标处理消息请求,将达到其对应的生存时间的目标处理消息通过死信队列交换机放入虚拟资源删除死信队列。
6.一种动态处理虚拟化资源的装置,其特征在于,包括:
生成模块,用于在获取到至少一个处理请求信息时,基于每个处理请求信息及其对应的请求类型,生成对应类型的处理消息,并将所述处理消息发送给消息中间件,其中所述处理消息携带生存时间;
获取模块,用于当监听到所述消息中间件中有至少一个处理消息达到其对应的生存时间时,发送目标处理消息请求至消息中间件,以获取达到其对应的生存时间的目标处理消息;
处理模块,用于对所述目标处理消息进行解析,并基于解析结果及对应的处理消息类型发送相应的控制指令,以对底层虚拟资源进行创建或删除操作;对所述目标处理消息进行解析,确定目标处理消息对应的类型;当所述目标处理消息对应的类型为创建类型时,第一消费者生成所述目标处理消息对应的创建控制命令,并将所述创建控制命令发送至中间件,以对底层虚拟资源进行创建操作;当所述目标处理消息对应的类型为删除类型时,第二消费者生成所述目标处理消息对应的删除控制命令,并将所述删除控制命令发送至中间件,以对底层虚拟资源进行删除操作。
7.一种动态处理虚拟化资源的装置,其特征在于,包括:
接收模块,用于接收云管平台系统发送的处理消息;所述处理消息中携带生存时间;所述云管平台获取到至少一个处理请求信息时,基于每个处理请求信息及其对应的请求类型,生成对应类型的所述处理消息;
反馈模块,用于当有至少一个处理消息达到其对应的生存时间时,接收云管平台发送的目标处理消息请求,将达到其对应的生存时间的目标处理消息发送至云管平台;所述云管平台对所述目标处理消息进行解析,并基于解析结果及对应的处理消息类型发送相应的控制指令,以对底层虚拟资源进行创建或删除操作;
所述云管平台对所述目标处理消息进行解析,并基于解析结果及对应的处理消息类型发送相应的控制指令,以对底层虚拟资源进行创建或删除操作,包括:
所述云管平台对所述目标处理消息进行解析,确定所述目标处理消息对应的类型;
当所述目标处理消息对应的类型为创建类型时,第一消费者生成所述目标处理消息对应的创建控制命令,并将所述创建控制命令发送至中间件,以对底层虚拟资源进行创建操作;
当所述目标处理消息对应的类型为删除类型时,第二消费者生成所述目标处理消息对应的删除控制命令,并将所述删除控制命令发送至中间件,以对底层虚拟资源进行删除操作。
8.一种动态处理虚拟化资源的装置,其特征在于,包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行权利要求1-2或者3-5中任一项所述的动态处理虚拟化资源的方法。
9.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储有计算机指令,所述计算机指令被处理器执行时实现如权利要求1-2或者3-5中任一项所述的动态处理虚拟化资源的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111304867.2A CN114020464B (zh) | 2021-11-05 | 2021-11-05 | 一种动态处理虚拟化资源的方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111304867.2A CN114020464B (zh) | 2021-11-05 | 2021-11-05 | 一种动态处理虚拟化资源的方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114020464A CN114020464A (zh) | 2022-02-08 |
CN114020464B true CN114020464B (zh) | 2022-11-01 |
Family
ID=80061314
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111304867.2A Active CN114020464B (zh) | 2021-11-05 | 2021-11-05 | 一种动态处理虚拟化资源的方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114020464B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117891628B (zh) * | 2024-03-15 | 2024-05-28 | 山东乾云启创信息科技股份有限公司 | 一种云管平台长时间任务执行结果跟踪方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107943828A (zh) * | 2017-10-18 | 2018-04-20 | 深圳市牛鼎丰科技有限公司 | 业务状态查询方法、装置、计算机设备和存储介质 |
CN111225041A (zh) * | 2019-12-26 | 2020-06-02 | 的卢技术有限公司 | 一种实现延时消息队列的方法及系统 |
CN112015537A (zh) * | 2020-09-03 | 2020-12-01 | 中国平安财产保险股份有限公司 | 数据处理任务的执行方法、系统、终端设备及存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9906480B2 (en) * | 2015-12-10 | 2018-02-27 | Facebook, Inc. | Techniques for ephemeral messaging with legacy clients |
CN108449410B (zh) * | 2018-03-19 | 2022-03-22 | 深信服科技股份有限公司 | 一种云平台中消息管理方法、系统及相关装置 |
CN109271265B (zh) * | 2018-09-29 | 2023-09-15 | 平安科技(深圳)有限公司 | 基于消息队列的请求处理方法、装置、设备及存储介质 |
CN111124653A (zh) * | 2019-12-31 | 2020-05-08 | 江苏满运软件科技有限公司 | 延迟消息处理方法、系统、设备和存储介质 |
CN113064707B (zh) * | 2021-03-31 | 2023-01-13 | 腾讯科技(深圳)有限公司 | 一种消息处理方法、装置及设备 |
-
2021
- 2021-11-05 CN CN202111304867.2A patent/CN114020464B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107943828A (zh) * | 2017-10-18 | 2018-04-20 | 深圳市牛鼎丰科技有限公司 | 业务状态查询方法、装置、计算机设备和存储介质 |
CN111225041A (zh) * | 2019-12-26 | 2020-06-02 | 的卢技术有限公司 | 一种实现延时消息队列的方法及系统 |
CN112015537A (zh) * | 2020-09-03 | 2020-12-01 | 中国平安财产保险股份有限公司 | 数据处理任务的执行方法、系统、终端设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114020464A (zh) | 2022-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3073374B1 (en) | Thread creation method, service request processing method and related device | |
EP2479677A1 (en) | Method, system and physical host for virtual machine (vm) storage space management | |
US20090043873A1 (en) | Methods and Apparatus for Restoring a Node State | |
US20120110293A1 (en) | Method and system for managing virtual machine storage space and physical host | |
CN112035238A (zh) | 任务调度处理方法、装置、集群系统及可读存储介质 | |
CN112579304A (zh) | 基于分布式平台的资源调度方法、装置、设备及介质 | |
CN112860387A (zh) | 分布式任务调度方法、装置、计算机设备及存储介质 | |
CN114020464B (zh) | 一种动态处理虚拟化资源的方法、装置及存储介质 | |
US20230037783A1 (en) | Resource scheduling method and related apparatus | |
CN113014608B (zh) | 一种流量分发控制方法、装置、电子设备及存储介质 | |
CN116089477B (zh) | 分布式训练方法及系统 | |
CN110471769B (zh) | 一种虚拟机的资源管理方法及装置 | |
KR102284264B1 (ko) | 클라우드 시스템 및 그 제어방법 | |
US10866833B2 (en) | Method and appratus for implementing microkernel architecture of industrial server | |
CN109002347B (zh) | 一种虚拟机内存分配方法、装置及系统 | |
CN114625474A (zh) | 容器迁移方法、装置、电子设备及存储介质 | |
CN110866264A (zh) | 一种多芯片多板卡协同运算方法、装置及设备 | |
EP4191413A1 (en) | Message management method, device, and serverless system | |
CN111082982A (zh) | 数据传输方法、电子设备、系统及介质 | |
CN116743589B (zh) | 云主机迁移方法、装置及电子设备 | |
CN111580936B (zh) | 虚拟化数据处理方法和系统 | |
CN117251289A (zh) | 一种多系统的请求处理方法、装置、设备及存储介质 | |
CN115858135A (zh) | 云计算动态资源调度方法、装置及电子设备 | |
CN116367335A (zh) | 资源分配方法、装置和存储介质 | |
CN116225699A (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 |