虚拟化平台线程控制方法、设备和系统的制作方法_2

文档序号:9375334阅读:来源:国知局
性能的分界点,当客户端运行的所有线程占用的虚拟机的资源大于等于预设的第一限制阈值,则说明虚拟机工作性能整体开始下降;当客户端运行的所有线程占用的虚拟机的资源小于预设的第一限制阈值,则说明虚拟机工作性能良好。
[0048]步骤103,若判断获知所述占用的资源大于等于所述第一限制阈值,则根据所述控制中心下发的线程优先级信息,控制低级别的线程休眠。
[0049]虚拟机将当前所有线程占用的虚拟机的资源与预设的第一限制阈值进行比较后,若判断获知占用的资源大于等于该第一限制阈值,则说明虚拟机工作性能整体开始下降。需要注意的是,当第一限制阈值中的占比限制为多项资源时,虚拟机上当前运行的线程占用的资源大于等于其中一项,即为大于等于预设的第一限制阈值。从而虚拟机根据控制中心预先下发的线程优先级信息,控制低级别的线程休眠。以防止对虚拟机的资源占用过多,降低虚拟机的整体性能,影响正常业务。
[0050]需要说明的是,控制中心下发的线程优先级信息是控制中心根据线程类型在客户端的重要性设定的优先级,可以根据具体的应用场景进行调整,本实施例对此不做限制,比如,低级别的线程包括:扫描线程和漏洞修复线程。
[0051]本实施例提供的虚拟化平台线程控制方法,当虚拟机上的客户端针对控制中心下发的多个任务开启多线程运行时,开启监控线程,监控所有线程占用的虚拟机的资源,若判断获知所述占用的资源大于等于与虚拟机对应的第一限制阈值,则根据控制中心下发的线程优先级信息,控制低级别的线程休眠。实现了根据虚拟机的资源占用情况动态控制线程的工作状态,对客户端线程执行粒度更精细化的控制,防止对虚拟机的资源占用过多,降低虚拟机的整体性能,影响正常业务。
[0052]图2是本发明实施例提供的另一种虚拟化平台线程控制方法的流程图,本实施例提供的方法被配置在虚拟机中执行,如图2所示,该方法具体包括:
[0053]步骤201,当虚拟机上的客户端针对控制中心下发的多个任务开启多线程运行时,向所述控制中心发送资源控制请求;
[0054]当虚拟机上的客户端针对控制中心下发的多个任务开启多线程运行时,向所述控制中心发送资源控制请求。其中,虚拟机可以将客户端针对控制中心下发的多个任务开启的线程数量,和/或,线程类型与预设的阈值信息进行比较,以判断是否向所述控制中心发送资源控制请求。举例说明如下:
[0055]预设的阈值信息中线程数量的上线为5,当虚拟机判断获知客户端针对控制中心下发的多个任务开启的线程数量大于等于5时,向控制中心发送资源控制请求。
[0056]步骤202,接收所述控制中心分配的与所述虚拟机对应的第一限制阈值,所述第一限制阈值是所述控制中心根据下发给所述虚拟机的任务类型进行分配的;
[0057]控制中心接收到虚拟机发送的资源控制请求后,根据下发给该虚拟机的任务类型为该虚拟机分配与其对应的第一限制阈值,举例来说,当控制中心下发给该虚拟机的任务类型属于对虚拟机性能要求比较高的任务,比如即时通信的实时性较高等,则为该虚拟机分配的第一限制阈值较低,当控制中心下发给该虚拟机的任务类型属于对虚拟机性能要求比较低的任务,比如传输文件等,则为该虚拟机分配的第一限制阈值较高。
[0058]虚拟机接收控制中心分配的与虚拟机对应的第一限制阈值。
[0059]步骤203,开启监控线程,根据预设的监控触发策略获取监控频率;
[0060]开启监控线程,根据预设的监控触发策略获取监控频率,其中,监控触发策略根据实际应用需要进行设置,比如:
[0061]根据预设的时间监控策略获取与当前时间对应的监控频率,或者,
[0062]根据预设的任务监控策略获取与当前所接收的任务数量对应的监控频率。
[0063]步骤204,采用所述监控频率监控所有线程占用的虚拟机的资源;
[0064]步骤205,判断所述占用的资源是否小于预设的、与所述虚拟机对应的第一限制阈值;
[0065]步骤206,若判断获知所述占用的资源大于等于所述第一限制阈值,则根据所述控制中心下发的线程优先级信息,控制低级别的线程休眠;
[0066]步骤204-步骤206的具体实施过程参见图1所示实施例中的步骤101-步骤103,其实现原理类似,
[0067]步骤207,若判断获知所述占用的资源小于所述第一限制阈值,则唤醒处于休眠状态的线程。
[0068]随着虚拟机上其它线程的结束,线程占用的虚拟机资源慢慢低于第一限制阈值,则说明在保证虚拟机工作性能的前提下,虚拟机当前执行的线程不饱和,从而唤醒之前处于休眠状态的线程继续执行任务,比如扫描线程继续扫描。从而根据虚拟机的资源占用情况动态控制线程的工作状态,在保证虚拟机工作性能的前提下,执行更多的任务。
[0069]本实施例提供的虚拟化平台线程控制方法,当虚拟机上的客户端针对控制中心下发的多个任务开启多线程运行时,开启监控线程,采用与监控触发策略对应的监控频率监控所有线程占用的虚拟机的资源,若判断获知所述占用的资源大于等于与虚拟机对应的第一限制阈值,则根据控制中心下发的线程优先级信息,控制低级别的线程休眠,若判断获知所述占用的资源小于所述第一限制阈值,则唤醒处于休眠状态的线程。实现了根据虚拟机的资源占用情况动态控制线程的工作状态,在保证虚拟机工作性能的前提下,执行更多的任务。
[0070]图1和图2是针对客户端上开启线程过多导致虚拟机资源消耗过大的场景,图3所示实施例为物理机上的至少一台虚拟机的消耗过大导致所在的物理机资源消耗过大的场景,具体说明如下:
[0071]图3是本发明实施例提供的另一种虚拟化平台线程控制方法的流程图,本实施例提供的方法被配置在虚拟机中执行,如图3所示,基于上述实施例,该方法还具体包括:
[0072]步骤301,将所述虚拟机的资源占用信息发送给所述控制中心;
[0073]当虚拟机上的客户端针对控制中心下发的多个任务开启多线程运行时,开启监控线程,监控所有线程占用的虚拟机的资源,将获取的虚拟机的资源占用信息发送给控制中心。虚拟机的资源占用信息的具体表现形式包括:百分比形式,比如百分之二十,控制中心为虚拟机预先划分所有资源,因此控制中心通过获知百分之二十就知道当前消耗的具体资源数量,或者,虚拟机直接上传当前消耗的具体资源数量比如1G。
[0074]步骤302,接收所述控制中心根据所述线程优先级信息发送的、携带线程标识的休眠控制指令,所述休眠控制指令是所述控制中心获取所述虚拟机所属的物理机上、所有虚拟机的资源占用信息后,判断获知所有虚拟机占用的所述物理机的资源大于等于预设的、与所述物理机对应的第二限制阈值后发送的;
[0075]虚拟机上的客户端开的线程越多,占用的虚拟机的资源越大,同时占用物理机的资源也就越大。为了避免物理机的资源消耗过大,影响物理机整体的工作性能,预先为该物理机设置资源占用的第二限制阈值。
[0076]该第二限制阈值用于标记物理机资源占用的上线,第二限制阈值的内容根据所消耗的资源类型而定,资源类型具体包括:中央处理单元CPU、内存、输入输出接口 1和网络。由于不同的物理机的资源配比和运行性能不同,因此,对占用资源的限制也不完全相同,因此,第二限制阈值的具体内容根据实际应用需要进行设定,本实施例对此不做限制,举例说明如下:
[0077]与该物理机对应的第二限制阈值包括:客户端消耗的CPU资源占用整个物理机CPU资源的占比限制为5%,客户端消耗的内存资源占用整个物理机内存资源的占比限制为5%,客户端消耗的网络资源占用整个物理机网络资源的占比限制为5%。
[0078]第二限制阈值是物理机工作性能的分界点,当物理机上所有虚拟机的客户端运行的所有线程占用的物理机的资源大于等于预设的第二限制阈值,则说明物理机工作性能整体开始下降;当物理机上所有虚拟机的客户端运行的所有线程占用的物理机的资源小于预设的第二限制阈值,则说明物理机工作性能良好。
[0079]当控制中心接收部署在物理机上的至少一个虚拟机发送的资源占用信息,然后判断所有虚拟机占用的所述物理机的资源是否小于预设的、与所述物理机对应的第二限制阈值;若判断获知所述占用的资源大于等于所述第二限制阈值,则根据线程优先级信息向具有低级别线程的虚拟机上发送携带线程标识的休眠控制指令。
[0080]步骤303,控制与所述线程标识对应的线程休眠;
[0081]具有低级别线程的虚拟机根据控制中心的指示控制与该线程标识对应的线程休眠。
[0082
当前第2页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1