[发明专利]一种内存资源管理方法和装置有效
申请号: | 201810711039.2 | 申请日: | 2018-07-03 |
公开(公告)号: | CN108897603B | 公开(公告)日: | 2021-10-01 |
发明(设计)人: | 周胜利 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455 |
代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 李红爽;解婷婷 |
地址: | 450018 河南省郑州市*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 内存 资源管理 方法 装置 | ||
本发明公开了一种内存资源管理方法和装置。涉及虚拟机技术,解决了通过重启释放内存导致客户服务中断的问题。该方法包括:获取虚拟机内部的内存使用量;获取虚拟机进程占用的物理内存占用量;在所述内存使用量与所述物理内存占用量达到预置的内存释放条件时,执行内存释放。本发明提供的技术方案适用于虚拟机管理平台,实现了自动执行内存释放。
技术领域
本发明涉及虚拟机技术,尤指一种内存资源管理方法和装置。
背景技术
通过Libvirt和Qemu创建的linux虚拟机,在运行过程中,占用的内存会随着虚拟机内部业务量的上升而逐渐增加,当业务量下降时,虚拟机内部内存使用率会逐渐下降,但是主机上对应的Qemu进程占用的内存不会下降,即Qemu占用内存不释放,导致主机上的可用内存越来越少,资源越来越紧张。
通常来说,要改变客户机占用的宿主机内存,是要先关闭客户机,修改启动时的内存配置,然后重启客户机才能实现。这样就需要中断客户服务,影响了用户体验。
发明内容
为了解决上述技术问题,本发明提供了一种内存资源管理方法和装置。通过实时监控虚拟机内部内存和物理内存使用情况,自动执行内存释放,解决了通过重启释放内存导致客户服务中断的问题。
为了达到本发明目的,本发明提供了一种内存资源管理方法,包括:
获取虚拟机内部的内存使用量;
获取虚拟机进程占用的物理内存占用量;
在所述内存使用量与所述物理内存占用量达到预置的内存释放条件时,执行内存释放。
优选的,在所述内存使用量与所述物理内存占用量达到预置的内存释放条件时,执行内存释放的步骤包括:
根据以下表达式计算可释放内存量:
可释放内存量=内存使用量-(内存规格值-物理内存占用量),
其中,所述内存规格值为预置的虚拟机可用内存量;
在所述可释放内存量达到预置的内存释放门限时,执行内存释放。
优选的,该方法还包括:
设置所述内存规格值。
优选的,该方法还包括:
设置所述内存释放门限。
优选的,所述获取虚拟机内部的内存使用量的步骤之前,还包括:
获取所述虚拟机的操作系统类型,判断所述虚拟机的操作系统能否支持内存释放。
本发明还提供了一种内存资源管理装置,包括:
内部内存检测模块,用于获取虚拟机内部的内存使用量;
物理内存检测模块,用于获取虚拟机进程占用的物理内存占用量;
内存释放模块,用于在所述内存使用量与所述物理内存占用量达到预置的内存释放条件时,执行内存释放。
优选的,所述内存释放模块包括:
可释放内存计算单元,用于根据以下表达式计算可释放内存量:
可释放内存量=内存使用量-(内存规格值-物理内存占用量),
其中,所述内存规格值为预置的虚拟机可用内存量;
释放执行单元,用于在所述可释放内存量达到预置的内存释放门限时,执行内存释放。
优选的,该装置还包括:
第一配置模块,用于设置所述内存规格值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810711039.2/2.html,转载请声明来源钻瓜专利网。