[发明专利]一种缓存读写的方法及终端有效
申请号: | 201910255944.6 | 申请日: | 2019-04-01 |
公开(公告)号: | CN110083549B | 公开(公告)日: | 2021-10-01 |
发明(设计)人: | 刘德建;林伟;郭玉湖 | 申请(专利权)人: | 福建天泉教育科技有限公司 |
主分类号: | G06F12/0895 | 分类号: | G06F12/0895;G06F12/0891 |
代理公司: | 福州市博深专利事务所(普通合伙) 35214 | 代理人: | 林志峥 |
地址: | 350212 福建省福州市长乐*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 缓存 读写 方法 终端 | ||
本发明公开了一种缓存读写的方法及终端,通过在只读缓存和普通缓存之间设置读写缓存,在读场景下,在所述只读缓存未查询到对应数据时查询所述读写缓存,在所述读写缓存未查询到对应数据时查询所述普通缓存,并根据在所述普通缓存查询到的数据分别更新所述只读缓存和读写缓存;写场景下,在更新所述普通缓存成功后清空所述读写缓存。利用所述读写缓存作为中间件,在所述普通缓存更新成功后,仅先清空所述读写缓存,可以在读写操作同时发生时,有效缓解高并发下的读写压力,区别于对数据读写进行加锁导致读写等待的现有技术,本发明可以实现缓存数据的读写分离,支持高并发场景下的缓存数据读写。
技术领域
本发明涉及缓存技术领域,尤其是涉及一种缓存读写的方法及终端。
背景技术
通常在系统中会使用redis或memcache等缓存服务器作为缓存层,以集群或者单节点的方式来提供缓存服务。多数情况下,系统也会通过本地缓存来实现数据存储的功能。使用本地内存作为缓存时,可以实现高并发情况下数据的快速读取与写入。但这时存在新的问题,即在高并发情况下要对数据进行修改时,将会导致内存数据出现频繁的读写冲突。
目前,为了避免读写冲突带来的数据不准确问题,通常会在写入数据时进行加锁处理,但这种方式会影响数据的读取操作,由于是同步串行化执行,在写入数据时进行加锁处理后,读取数据的进程也会进行等待,只有在等待数据写入完成后才能进行数据的读取,在高并发的情况下将直接导致线程卡顿、程序奔溃或服务器宕机等严重后果。
发明内容
本发明所要解决的技术问题是:提供一种缓存读写的方法及终端,可以实现缓存数据的读写分离,支持高并发场景下的缓存数据读写。
为了解决上述技术问题,本发明采用的一种技术方案为:
一种缓存读写的方法,包括步骤:
S1、设置只读缓存、读写缓存以及普通缓存;
S21、读场景下,若在所述只读缓存未查询到对应数据,则查询所述读写缓存,若在所述读写缓存未查询到对应数据,则查询所述普通缓存,并根据在所述普通缓存查询到的数据分别更新所述只读缓存和读写缓存;
S22、写场景下,在更新所述普通缓存成功后,并清空所述读写缓存。
为了解决上述技术问题,本发明采用的另一种技术方案为:
一种缓存读写的终端,包括存储器、处理器及存储在存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
S1、设置只读缓存、读写缓存以及普通缓存;
S21、读场景下,若在所述只读缓存未查询到对应数据,则查询所述读写缓存,若在所述读写缓存未查询到对应数据,则查询所述普通缓存,并根据在所述普通缓存查询到的数据分别更新所述只读缓存和读写缓存;
S22、写场景下,在更新所述普通缓存成功后,并清空所述读写缓存。
本发明的有益效果在于:通过在只读缓存和普通缓存之间设置读写缓存,在读场景下,在所述只读缓存未查询到对应数据时查询所述读写缓存,在所述读写缓存未查询到对应数据时查询所述普通缓存,并根据在所述普通缓存查询到的数据分别更新所述只读缓存和读写缓存;写场景下,在更新所述普通缓存成功后清空所述读写缓存。利用所述读写缓存作为中间件,在所述普通缓存更新成功后,仅先清空所述读写缓存,可以在读写操作同时发生时,有效缓解高并发下的读写压力,区别于对数据读写进行加锁导致读写等待的现有技术,本发明可以实现缓存数据的读写分离,支持高并发场景下的缓存数据读写。
附图说明
图1为本发明实施例的一种缓存读写的方法的步骤流程图;
图2为本发明实施例的一种缓存读写的终端的结构示意图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福建天泉教育科技有限公司,未经福建天泉教育科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910255944.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:数据处理方法及相关网元、设备、系统
- 下一篇:用于存储内容的方法和装置