[发明专利]查询请求的响应方法和装置、存储介质及电子装置在审
申请号: | 202111464893.1 | 申请日: | 2021-12-02 |
公开(公告)号: | CN114254001A | 公开(公告)日: | 2022-03-29 |
发明(设计)人: | 严峰 | 申请(专利权)人: | 青岛海尔科技有限公司;海尔智家股份有限公司 |
主分类号: | G06F16/2455 | 分类号: | G06F16/2455;G06F16/2453 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 王晓婷 |
地址: | 266101 山东省*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 查询 请求 响应 方法 装置 存储 介质 电子 | ||
本发明公开了一种键值对的缓存方法和装置、存储介质及电子装置,其中,上述方法包括:在接收到请求方发起的查询请求的情况下,确定缓存库中是否存在与待查询关键字对应的第一键值对,其中,所述查询请求中至少包括:待查询关键字;在所述缓存库中存在与所述待查询关键字对应的第一键值对的情况下,确定所述第一键值对中的数据值是否为时间戳,其中,所述时间戳用于指示上一次在数据库中查询所述关键字对应的数据值的第一查询时间;在所述第一键值对中的数据值为时间戳的情况下,根据所述时间戳确定所述第一键值对是否有效;在所述第一键值对有效的情况下,向所述请求方返回空值。
技术领域
本发明涉及通信领域,具体而言,涉及一种查询请求的响应方法和装置、存储介质及电子装置。
背景技术
在后台软件服务中,一般都需要查询外部数据库来获取数据,再经过业务逻辑加工后返回给请求方,为了减少请求的响应时长,提升后台服务的处理性能,通过内存来缓存之前已经查询过了的数据是一种常用的技术手段,这样下次再遇到相同的请求时就不必再执行查询外部数据库这种耗时操作,而是直接从缓存取出对应数据返回就可以了。
当请求方的请求数据中的关键字对应的数据值在数据库中不存在时(即,数据值为空值),把返回的空值与关键字对应的关键字的键值对缓存起来,这样下次有相同请求时,也可以马上把之前缓存的空值返回给请求方,以避免缓存击穿。
但是,采用缓存空值来防止缓存击穿的缺点有:
1.有些场景下的数据是很少改动的,如海尔冰箱的每小时能耗值,一旦计算完成就基本不变了,所以可以设置较长的缓存有效期,如1天。这个缓存时长对于已经产生的数据而言是合适的,即相同的请求,从第一次查询的时间开始算起,在1天之内的查询都直接从缓存获取,不必查询数据库。
2.如果采用以上缓存有效期来缓存空值的话,则就会因为缓存时间太长而导致用户可能需要等待太长时间才能查询到准确数据,假设每小时的5分钟计算生成上个小时的能耗数据,当前时间为某日的12:04,用户查询当日11-12点的能耗数据,因为未到12:05,该数据此时还未计算出来,返回空值并被缓存了,则用户必须等到第二天的12:05才能查询到昨天11-12点的能耗数据。这个缓存效果对于用户体验而言完全是不可接受的。
针对相关技术中,缓存库中的键值对中的数据值为空值的情况下,很有可能无法准确查询到准确的数据等问题,尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种查询请求的响应方法和装置、存储介质及电子装置,以至少解决相关技术中,缓存库中的键值对中的数据值为空值的情况下,很有可能无法准确查询到准确的数据等问题。
根据本发明实施例的一个实施例,提供了一种查询请求的响应方法,包括:在接收到请求方发起的查询请求的情况下,确定缓存库中是否存在与待查询关键字对应的第一键值对,其中,所述查询请求中至少包括:待查询关键字;在所述缓存库中存在与所述待查询关键字对应的第一键值对的情况下,确定所述第一键值对中的数据值是否为时间戳,其中,所述时间戳用于指示上一次在数据库中查询所述关键字对应的数据值的第一查询时间;在所述第一键值对中的数据值为时间戳的情况下,根据所述时间戳确定所述第一键值对是否有效;在所述第一键值对有效的情况下,向所述请求方返回空值。
在一个示例性实施例中,确定缓存库中是否存在与待查询关键字对应的第一键值对之后,所述方法还包括:在所述缓存库中不存在与所述待查询关键字对应的第一键值对的情况下,确定数据库中是否存在与待查询关键字对应的第二键值对;在所述数据库中不存在与所述待查询关键字对应的第二键值对的情况下,将所述待查询关键字与目标时间戳的目标键值对缓存至所述缓存库,其中,所述目标时间戳用于指示服务器在数据库中查询所述待查询关键字对应的数据值的第二查询时间。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于青岛海尔科技有限公司;海尔智家股份有限公司,未经青岛海尔科技有限公司;海尔智家股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111464893.1/2.html,转载请声明来源钻瓜专利网。