[发明专利]兼顾快速响应和数据更新的数据缓存方法及系统在审
申请号: | 201811636286.7 | 申请日: | 2018-12-29 |
公开(公告)号: | CN109828749A | 公开(公告)日: | 2019-05-31 |
发明(设计)人: | 徐汕;梁炬;刘明;刘强 | 申请(专利权)人: | 北京航天云路有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F8/41 |
代理公司: | 北京纽乐康知识产权代理事务所(普通合伙) 11210 | 代理人: | 白明珠 |
地址: | 100039 北京市海淀区西*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 有效期 快速响应 数据更新 数据缓存 存活 更新数据 缓存策略 缓存数据 结果确定 | ||
本发明公开了一种兼顾快速响应和数据更新的数据缓存方法和系统,S1确定缓存数据的存活时间、最小有效期及最大有效期;S2比较步骤S1确定的所述存活时间与所述最小有效期及所述最大有效期;和S3基于步骤S2所述比较的结果确定缓存策略。本发明有益效果:不仅能够达到快速响应,而且兼顾在预期时间内更新数据。
技术领域
本发明涉及通信领域,具体来说,涉及一种兼顾快速响应和数据更新的数据缓存方法及系统。
背景技术
在软件系统开发过程中,一些数据查询时间长,而请求频率高,如果每次都实时查询数据,会导致数据请求响应很慢,特别在数据是需要大量计算得到的情况下,会消耗大量的服务器资源。
为了快速响应数据请求,在不要求数据实时更新的情况下,往往会对数据进行缓存(比如使用redis, memcache等组件进行数据缓存),数据缓存后,在数据请求时,从缓存中获取数据,能够快速返回数据,解决了快速响应问题,但是引来了数据更新问题。
目前,一般采用对缓存数据设置过期时间,当缓存数据过期后,就重新查询数据,查询到数据后,放到缓存中,同时返回数据,由于查询数据时间长,在此时就会出现数据请求响应很慢的情况:例如一个兼顾快速响应和数据更新的数据缓存时间为10s,那就意味着每10s会出现一次对数据请求响应慢。
针对相关技术中的问题,目前尚未提出有效的解决方案。
发明内容
针对相关技术中的上述技术问题,本发明提出一种兼顾快速响应和数据更新的数据缓存方法及系统,能够对数据想缓存的同时解决数据更新问题,不阻塞数据请求,以达到兼顾快速响应和数据更新。
为实现上述技术目的,本发明的技术方案是这样实现的:
一种兼顾快速响应和数据更新的数据缓存方法,包括以下步骤:
S1确定缓存数据的存活时间、最小有效期及最大有效期;
S2比较步骤S1确定的所述存活时间与所述最小有效期及所述最大有效期;和
S3基于步骤S2所述比较的结果确定缓存策略。
进一步地,步骤S3中:当所述的存活时间在最小有效期时,直接返回缓存数据。
进一步地,步骤S3中:当所述的存活时间在最小有效期和最大有效期之间时,触发数据更新请求到请求队列,然后返回缓存数据,处理数据更新的线程池处理请求队列里的请求,更新缓存数据。
本发明另一方面,提供一种兼顾快速响应和数据更新的数据缓存系统,包括:
第一确定模块,用于确定缓存数据的存活时间、最小有效期及最大有效期;
比较模块,用于比较确定的所述存活时间与所述最小有效期及所述最大有效期;和
第二确定模块,用于基于所述比较的结果确定缓存策略。
进一步地,所述第二确定模块中:当所述的存活时间在最小有效期时,直接返回缓存数据。
进一步地,所述第二确定模块中:当所述的存活时间在最小有效期和最大有效期之间时,触发数据更新请求到请求队列,然后返回缓存数据,处理数据更新的线程池处理请求队列里的请求,更新缓存数据。
本发明的有益效果:不仅能够达到快速响应,而且兼顾在预期时间内更新数据。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航天云路有限公司,未经北京航天云路有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811636286.7/2.html,转载请声明来源钻瓜专利网。