[发明专利]一种动态缓存调整方法及系统有效
申请号: | 201910033161.3 | 申请日: | 2019-01-14 |
公开(公告)号: | CN109871336B | 公开(公告)日: | 2021-02-02 |
发明(设计)人: | 潘亚楠;胡逸飞;赖炳新 | 申请(专利权)人: | 珠海金山网络游戏科技有限公司;珠海西山居移动游戏科技有限公司 |
主分类号: | G06F12/0802 | 分类号: | G06F12/0802 |
代理公司: | 广州嘉权专利商标事务所有限公司 44205 | 代理人: | 陈慧华 |
地址: | 519000 广东省珠海市高新*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 动态 缓存 调整 方法 系统 | ||
1.一种动态缓存调整方法,其特征在于,该方法包括:
S100、创建缓存池,并设置缓存池内存上限值、清理周期以及总清理时长;
S200、运行游戏程序,对游戏的资源的进行加载;
S300、缓存池对资源进行缓存以及按照清理周期和清理时长对资源进行循环清理,所述步骤S300包括:S301、读取上次缓存池对缓存资源执行清理的时刻,并根据当前时刻与缓存池对缓存资源执行清理的时刻的差,得到清理冷却时间;S302、判断清理冷却时间是否大于清理周期,若是则执行步骤S304,否则执行步骤S303;S303、休眠一定时间后,更新清理冷却时间并返回执行S302,其中一定时间可自定义;S304、按照资源权重值的大小排列倒序清理缓存池的资源;S305、记录清理缓存池资源所耗费的时间,记为清理时长,判断清理时长是否大于总清理时长,若是则结束清理操作,否则返回执行步骤S304;
S400、缓存池根据游戏发送的资源缓存请求执行资源的加载和/或卸载,统计各个资源的资源信息,其中资源信息包括资源的加载时间以及资源的冷却时间,并根据资源信息计算资源在缓存池中的权重值;
S500、根据缓存池中缓存的资源信息设置最小缓存权重值,并在资源池满载的情况下判断入池的资源的权重值是否大于最小缓存权重值,若是将最小缓存权重值对应的资源移出缓存池并将入池的资源按照权重入池,否则将入池的资源移出资源池,并结束资源使用。
2.根据权利要求1所述的动态缓存调整方法,其特征在于,所述S301还包括:
若未读取到上次缓存池对缓存资源执行清理的时刻,则直接设置清理冷却时间为0。
3.根据权利要求1所述的动态缓存调整方法,其特征在于,所述S400包括:
S410、根据游戏请求内容加载对应的资源;
S420、判断该资源是否在缓存池中,若是则执行步骤S430,否则执行步骤S440;
S430、从缓存池加载该资源并记录该资源的使用时刻;
S440、从磁盘加载该资源并记录该资源的使用时刻和加载时间;
S450、资源加载完毕,根据资源的使用时刻和加载时间计算各个资源的权重值。
4.根据权利要求3所述的动态缓存调整方法,其特征在于,所述S450包括:
S451、记录当前时刻,与资源的使用时间做差的绝对值得到冷却时间;
S452、根据资源的冷却时间和加载时间计算各个资源的权重值,计算式为:
W=T×A+L×B,
其中W为权重值,
其中T为冷却时间,
其中L为加载时间,
其中A、B为权重系数,可自定义;
S453、按照步骤S452的方法计算各个资源的权重值,并在每次缓存池加载资源时更新资源的权重值。
5.根据权利要求1所述的动态缓存调整方法,其特征在于,所述S500包括:
S501、检查资源池中各个资源的权重值,将权重值最小的资源的权重值设为最小缓存权重值;
S502、资源加载完毕,用于游戏调用同时检查资源池是否已满,若是则执行步骤S503,否则执行步骤S504;
S503、判断入池的资源的权重值是否大于最小缓存权重值,若是则将最小缓存权重值对应的资源移出资源池,并将入池的资源按照权重入池,否则将入池的资源移出资源池;
S504、将入池的资源按照权重入池;
S505、结束资源使用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于珠海金山网络游戏科技有限公司;珠海西山居移动游戏科技有限公司,未经珠海金山网络游戏科技有限公司;珠海西山居移动游戏科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910033161.3/1.html,转载请声明来源钻瓜专利网。