[发明专利]一种用于分布式缓存系统中缓存数据更新的方法与设备在审
申请号: | 202010575341.7 | 申请日: | 2020-06-22 |
公开(公告)号: | CN111813792A | 公开(公告)日: | 2020-10-23 |
发明(设计)人: | 谷庆旭 | 申请(专利权)人: | 上海悦易网络信息技术有限公司 |
主分类号: | G06F16/23 | 分类号: | G06F16/23;G06F16/2455;G06F16/27 |
代理公司: | 上海百一领御专利代理事务所(普通合伙) 31243 | 代理人: | 汪祖乐;朱永海 |
地址: | 200433 上海市杨浦*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 分布式 缓存 系统 数据 更新 方法 设备 | ||
与现有技术相比,本申请通过一种用于分布式缓存系统中缓存数据更新的方法,当满足触发条件,基于分布式缓存系统缓存数据的缓存关键字将所述缓存关键字对应的缓存失效时间和/或缓存数据进行更新,其中,所述缓存失效时间基于当前时间及缓存失效时长进行更新。通过该方法,可确保分布式缓存系统合理保持热点缓存数据的存储时长,又能及时清除低频缓存数据,在确保分布式缓存系统缓存数据使用效率的同时,提高了分布式缓存系统存储空间利用效率。
技术领域
本申请涉及计算机数据处理技术领域,尤其涉及一种用于分布式缓存系统中缓存数据更新的技术。
背景技术
在大型互联网应用中由于高并发访问、快速响应、动态扩展、易维护性等需求,为了减轻数据库负担,通常采用分布式缓存系统,如redis(Remote Dictionary Server,远程字典服务)。在构建分布式缓存系统应用时,往往会为其中存储的缓存数据设定一个合理的过期失效时间,缓存系统会定期清理过期失效的缓存数据,释放过期失效的缓存数据占用的存储空间,以保证缓存系统的可持续性。但是在高并发访问场景下,当大量请求因缓存数据过期失效等原因未能获取到缓存数据时,需要向数据库请求重新加载数据,这样就会造成数据库压力瞬间增大,甚至数据库崩溃。
针对上述应用场景,现有应对方式通常是对于高频被请求的数据在分布式缓存系统中被设置成永不过期。但是这种应对方式会导致分布式缓存系统缓存数据占用空间的不断攀升,而当缓存数据的使用频度降低后,并没有一个合理的机制去清理这些数据,造成分布式缓存系统存储空间的浪费。
发明内容
本申请的目的是提供一种用于分布式缓存系统中缓存数据更新的方法与设备,用以解决现有技术中分布式缓存系统缓存数据更新效率低的技术问题。
根据本申请的一个方面,提供了一种用于分布式缓存系统中缓存数据更新的方法,其中,所述方法包括:
当满足触发条件,基于缓存数据的缓存关键字将所述缓存关键字对应的缓存失效时间和/或缓存数据进行更新,其中,所述缓存失效时间基于当前时间及缓存失效时长进行更新。
采用所述方法以使得缓存数据的缓存关键字对应的缓存失效时间平滑后移,避免因缓存数据突然失效无法访问到,也避免了缓存数据永不过期造成分布式缓存系统的存储空间浪费。
可选地,其中,所述缓存数据通过数据封装的方式存储,其中,所述缓存数据的外层为数据过期时间,内层为对应的业务数据。
可选地,其中,所述触发条件包括以下任一项:
接收到缓存数据更新指令;
基于缓存数据请求,对所述缓存数据进行加载。
可选地,其中,基于缓存数据请求,对所述缓存数据进行加载包括:
当接收到所述缓存数据请求,根据所述缓存数据的缓存关键字判断所述缓存数据的缓存关键字是否失效;
当所述缓存关键字有效,基于所述数据过期时间判断所述缓存数据是否过期;
若所述缓存数据已过期,基于预设加载参数加载缓存数据,其中,所述预设加载参数包括等待或者不等待。
可选地,其中,当所述预设加载参数为不等待,异步加载缓存数据;当所述预设加载参数为等待,同步加载缓存数据。
可选地,其中,所述同步加载缓存数据包括:
若成功获取到数据加载分布式锁,向数据库请求所述缓存数据,接收所述数据库返回的所述缓存数据,加载所述缓存数据;
或者,若未获取到所述数据加载分布式锁,进入等待重试流程。
可选地,其中,所述等待重试流程包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海悦易网络信息技术有限公司,未经上海悦易网络信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010575341.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种太阳能果蔬干燥装置
- 下一篇:一种基于区块链智能合约的资产交易系统和装置