[发明专利]一种缓存处理方法及装置有效
申请号: | 201611198397.5 | 申请日: | 2016-12-22 |
公开(公告)号: | CN108228669B | 公开(公告)日: | 2020-08-14 |
发明(设计)人: | 骆志军 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F16/957 | 分类号: | G06F16/957 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 郝传鑫;熊永强 |
地址: | 518057 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 缓存 处理 方法 装置 | ||
本发明实施例公开了一种缓存处理方法,包括:接收搜索请求,并根据搜索请求查看是否命中缓存数据;在命中缓存数据的情况下,检测命中的缓存数据是否过期;在过期的情况下,输出命中的缓存数据;在命中的缓存数据没有过期的情况下,分析命中的缓存数据是否在预设的最大过期期限内;在预设的最大过期期限内的情况下,输出命中的缓存数据,并在符合触发更新缓存数据的条件下通过搜索层服务获取搜索结果,根据获取到的搜索结果进行缓存写入;不在预设的最大过期期限内的情况下,通过搜索层服务获取搜索结果,并根据获取到的搜索结果输出数据。本发明还公开了一种缓存处理装置,解决现有技术中缓存系统的命中率不高,使得搜索服务的延迟较大的技术问题。
技术领域
本发明涉及计算机互联网领域,尤其涉及缓存处理方法以及缓存处理装置。
背景技术
搜索引擎的搜索速度对用户的搜索体验非常关键,如果一个搜索引擎搜索速度非常慢,搜索某一关键词需要等一段时间才能显示,那么将严重伤害用户体验。为了提高搜索速度,主流搜索引擎都使用搜索引擎缓存技术。
如图1示出的现有技术中的缓存架构示意图,当前比较典型的缓存方案,其详细流程如下:
1)缓存数据自动淘汰或者自动按照设定时间过期,比如5分钟数据过期;
2)搜索层失败的结果不缓存,否则搜索层的失败率会被放大;
3)命中缓存直接返回缓存数据给接入层;
4)未命中缓存,则访问搜索层服务获取搜索结果,成功获取到结果之后,写入缓存并返回数据给接入层。
现有的缓存方案,缓存系统的命中率不高,使得搜索服务的延迟较大,影响了数据搜索的时效性。
发明内容
本发明实施例所要解决的技术问题在于,提供一种缓存处理方法以及一种缓存处理装置,解决现有技术中缓存系统的命中率不高,使得搜索服务的延迟较大,影响了数据搜索的时效性的技术问题。
为了解决上述技术问题,本发明实施例第一方面公开了一种缓存处理方法,包括:
接收搜索请求,并根据所述搜索请求查看是否命中缓存数据;
在命中缓存数据的情况下,检测命中的缓存数据是否过期;
在所述命中的缓存数据没有过期的情况下,则输出所述命中的缓存数据;在所述命中的缓存数据过期的情况下,分析所述命中的缓存数据是否在预设的最大过期期限内;
在所述命中的缓存数据在预设的最大过期期限内的情况下,则输出所述命中的缓存数据,并在符合触发更新缓存数据的条件下通过搜索层服务获取搜索结果,根据获取到的所述搜索结果进行缓存写入;在所述命中的缓存数据不在预设的最大过期期限内的情况下,则通过搜索层服务获取所述搜索结果,并根据获取到的所述搜索结果输出数据。
结合第一方面,在第一种可能的实现方式中,还包括:
根据上一次搜索层服务的失败率,按照预设时间间隔更新当前所述搜索层服务的失败率。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述根据所述搜索请求查看是否命中缓存数据之后,还包括:
在没有命中缓存数据的情况下,通过搜索层服务获取所述搜索结果,根据获取到的所述搜索结果输出数据,并根据获取到的所述搜索结果进行缓存写入;
所述根据获取的所述搜索结果进行缓存写入,包括:
在获取的所述搜索结果为搜索失败的结果,且当前所述搜索层服务的失败率大于预设阈值的情况下,将所述搜索失败的结果写入缓存。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611198397.5/2.html,转载请声明来源钻瓜专利网。