【技术实现步骤摘要】
更新缓存的方法和装置
本专利技术涉及计算机
,尤其涉及一种更新缓存的方法和装置。
技术介绍
为了应对高并发请求以及请求的快速响应,通常会使用缓存。数据可能存在变化,需要考虑数据一致性的问题。保证数据的一致性的方式主要为三种:1.利用过期机制,将失效的数据自动被置换清理;2.级联更新:更新待更新数据时及时更新缓存;3.长轮询更新:采用定时程序不断的获取最新数据并更新缓存。在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:1.过期时间不好把握,当缓存过期时间设置的太长,容易造成访问到的数据已经过期;当缓存时间过短会把数据导入到底层存储介质。2.需要在以前的业务逻辑中编写更新缓存的代码,耦合性太高,代码复用性差。3.造成无效资源的浪费,当没有数据更新时,可能无故访问了底层存储介质并执行更新操作。
技术实现思路
有鉴于此,本专利技术实施例提供一种更新缓存的方法和装置,能够克服现有技术需要编写更新缓存的代码造成的耦合性太高、代码复用性差、 ...
【技术保护点】
1.一种更新缓存的方法,其特征在于,包括:/n利用切面确定缓存队列中的更新任务;/n确定所述更新任务对应的更新参数;/n利用反射机制和所述更新参数,将所述更新任务对应的待更新数据更新到缓存中。/n
【技术特征摘要】
1.一种更新缓存的方法,其特征在于,包括:
利用切面确定缓存队列中的更新任务;
确定所述更新任务对应的更新参数;
利用反射机制和所述更新参数,将所述更新任务对应的待更新数据更新到缓存中。
2.根据权利要求1所述的方法,其特征在于,所述切面包括:用于读取的切面和用于更新的切面;
所述利用切面确定缓存队列中的更新任务,包括:
设置组件对象注解、逻辑方法注解、列表注解;
根据所述组件对象注解和逻辑方法注解,利用用于读取的切面获取真实键对应的待更新数据;将所述待更新数据的格式转换为设定格式;
根据所述列表注解,利用用于更新的切面将原始键和待更新数据的唯一标识存储到自定义类中;将所述自定义类以设定格式存储到缓存队列中。
3.根据权利要求2所述的方法,其特征在于,所述组件对象注解标注与缓存操作有关的组件对象;
所述逻辑方法注解标注所述组件对象中需要更新缓存的业务逻辑方法;所述逻辑方法注解包括:所述组件对象对应的原始键、所述业务逻辑方法对应所述待更新数据的唯一属性;
所述列表注释包括逻辑方法注解中原始键的列表。
4.根据权利要求3所述的方法,其特征在于,确定所述更新任务对应的更新参数,包括:
在本地设置缓存定义字典和在数据库设置缓存数据字典;
根据所述缓存定义字典和缓存数据字典,确定所述更新任务对应的更新参数。
5.根据权利要求4所述的方法,其特征在于,所述在本地设置缓存定义字典,包括:
根据组件对象注解确定待更新数据的组件对象;
确定组件对象中标注了逻辑方法注解的业务逻辑方法;
将所述业务逻辑方法的原始键、所述组件对象的类类型和所述业务逻辑方法的定义存储到本地的缓存定义字典中。
6.根据权利要求5所述的方法,其特征在于,所述在数据库设置缓存数据字典,包括:
获得所述业务逻辑方法对应的真实键;
将所述真实键和所述业务逻辑方法中的参数,存储在数据库的缓存数据字典中;
其中,所述真实键由原始键和所述原始键对应的业务逻辑方法确定。
7.根据权利要求1所述的方法,其特征在于,所述更新到缓存中的方式为多线程异步更新。
8.一种更新缓存的装置,其特征在于,包括:
更新任务确定模块,用于利用切面确定缓存队列中的更新任务;
更新数据确定模块,用于确定所述更新任务对应的更新参数;
缓存更新模块,用于利用反射机制和所述更新参数,将所述...
【专利技术属性】
技术研发人员:刘小云,
申请(专利权)人:北京京东尚科信息技术有限公司,北京京东世纪贸易有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。