[发明专利]缓存中的数据更新方法、装置及计算机可读介质有效
申请号: | 201710966855.3 | 申请日: | 2017-10-17 |
公开(公告)号: | CN107958018B | 公开(公告)日: | 2021-06-11 |
发明(设计)人: | 杨延超 | 申请(专利权)人: | 北京百度网讯科技有限公司 |
主分类号: | G06F16/2455 | 分类号: | G06F16/2455;G06F9/50 |
代理公司: | 北京鸿德海业知识产权代理有限公司 11412 | 代理人: | 袁媛 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 缓存 中的 数据 更新 方法 装置 计算机 可读 介质 | ||
本发明提供一种缓存中的数据更新方法、装置及计算机可读介质。其中所述方法包括:根据数据更新策略集合中的数据更新策略,确定是否需要更新缓存的存储模块中存储的数据;若需要,生成更新数据的任务;启动线程池中的线程与数据对应的子服务通信,执行更新数据的任务,实现根据子服务中的数据更新缓存的存储模块中对应的数据。本发明的技术方案,能够很好地兼容缓存中的数据时效性和系统性能的问题。
【技术领域】
本发明涉及计算机应用技术领域,尤其涉及一种缓存中的数据更新方法、装置及计算机可读介质。
【背景技术】
缓存是软件系统中不可缺少的组件。传统的软件系统中,数据缓存层对数据库做缓存,以减少对数据库的访问,提升系统性能。
例如,图1为现有技术中常用的一种互联网微服务系统架构图。如图1所示,一个数据请求服务不仅仅用于查询数据库,更多的是远程服务调用,如图1中,该服务可以分别调用远程的子服务1、子服务2和子服务3,获取对应的子服务的数据。远程服务调用在性能上远远低于本地数据库的调用,在稳定性上更是不能望其项背。因此,数据缓存对微服务架构提升性能尤其重要。图2为现有技术中常用的另一种互联网微服务系统架构图。图2所述的系统架构,在图1的基础上增加了数据的缓存层。若服务首次向子服务1、子服务2和子服务3中的任意一个或者多个请求数据时,可以将获取的数据存储在缓存中,同时设置缓存中该数据的有效时间长度,以便于在缓存中该数据的有效期内、上层服务再次请求该数据时,可以直接根据缓存层中存储的该数据作出响应。该数据缓存层的优势在于:对服务的上层调用结果做缓存,加快服务响应速度;减少了对底层依赖的调用次数,减轻了底层服务的压力;缓存的数据可以用于服务降级,在底层服务不可用时仍然不影响主服务。但是该数据缓存层的缺点在于缓存的数据具有一定的时效性。由于子服务的业务可能会更改自己的数据,但这些数据不一定会同步到缓存中。如果这些数据对主服务的业务非常重要,缓存中的数据的时效性问题可能会造成系统难以发现的bug。
基于以上所述,若要保证缓存中的数据的时效性,则应缩短缓存中的数据的生命周期;若要提升系统性能,降低底层服务的压力,则应延长缓存中的数据生命周期。因此,亟需提供一种既能保证缓存中的数据时效性问题,又能保证系统性能的数据更新方案。
【发明内容】
本发明提供了一种缓存中的数据更新方法、装置及计算机可读介质,用于提供一种能够兼容缓存中的数据时效性问题和证系统性能的数据更新方案。
本发明提供一种缓存中的数据更新方法,所述方法包括:
根据数据更新策略集合中的数据更新策略,确定是否需要更新缓存的存储模块中存储的数据;
若需要,生成更新所述数据的任务;
启动线程池中的线程与所述数据对应的子服务通信,执行更新所述数据的任务,实现根据所述子服务中的数据更新所述缓存的所述存储模块中对应的所述数据。
进一步可选地,如上所述的方法中,生成更新所述数据的任务之后,所述方法还包括:
将更新所述数据的任务存储在队列中;
进一步地,启动线程池中的线程与所述数据对应的子服务通信,执行更新所述数据的任务,实现根据所述子服务中的数据更新所述缓存的所述存储模块中对应的所述数据,具体包括:
启动所述线程池中的线程,控制所述线程从所述队列中获取所述任务,并与所述数据对应的子服务通信执行所述任务;
获取执行所述任务的所述线程返回的更新后的所述数据;
将更新后的所述数据存储在所述缓存的所述存储模块中。
进一步可选地,如上所述的方法中,若所述存储模块中同时符合所述数据更新策略数据有多个时,将更新所述数据的任务存储在队列中,具体包括:
获取各所述数据对应的子服务标识;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京百度网讯科技有限公司,未经北京百度网讯科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710966855.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:利用语音识别识别联系人
- 下一篇:基于电网运行管理系统的图形化应用方法
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置