一种缓存对象更新方法、装置、设备及存储介质制造方法及图纸

技术编号:30405188 阅读:21 留言:0更新日期:2021-10-20 11:07
本申请提出一种缓存对象更新方法、装置、设备及存储介质,该方法包括:接收客户端发送的对象获取请求,确定对象获取请求对应的缓存对象存在且有效期未到达;获取缓存对象的相关状态信息;根据相关状态信息,判断是否提前更新缓存对象;若是,则提前更新缓存对象,及对对象获取请求进行响应。本申请在缓存对象失效前,依据对象的相关状态信息判断是否需提前更新,避免在对象失效后再更新造成对客户端响应的时延太长。提供了更智能的判断是否更新的方式,能适应越来越复杂的网络服务环境,综合缓存服务器的状态、客户端状态及对象的状态中的一种或多种,确定所采取的对象更新策略。能为客户端提供更精确的缓存对象,缓存对象的更新更加及时。更加及时。更加及时。

【技术实现步骤摘要】
一种缓存对象更新方法、装置、设备及存储介质


[0001]本申请属于通信
,具体涉及一种缓存对象更新方法、装置、设备及存储介质。

技术介绍

[0002]目前,很多网络通信场景中设置有缓存服务器,源站将对象缓存在缓存服务器中,通过缓存的对象为用户提供对象查询服务。源站的对象会不断更新,相应地也需要对缓存服务器中缓存的对象进行更新。
[0003]相关技术中提供了一种对象更新方法,该方法为缓存的对象设置了有效期,在该有效期内所有针对该对象的请求都会使用缓存的该对象进行响应。在该有效期结束之后,缓存服务器再次接收到客户端对该对象的请求时,缓存服务器再回源站获取该对象,缓存服务器发送对象更新请求给源站,并重新确定该对象的有效期。若在源站中未更新该对象,则源站会告知缓存服务器该对象未更新,缓存服务器将缓存的该对象发送给客户端。若在源站中更新了该对象,则源站将更新后的对象发送给缓存服务器。缓存服务器将当前缓存的该对象替换为更新后的对象,并将更新后的对象发送给客户端。
[0004]上述相关技术在对象的有效期结束后才向源站请求更新对象,若源站在对象有效期结束之前提前更新了对象,客户端就会获得已过期的内容;反之,若在有效期结束再更新对象,客户端需要等待边缘服务器回源获取更新后的对象,这就导致对客户端的响应时延变长。

技术实现思路

[0005]本申请提出一种缓存对象更新方法、装置、设备及存储介质,在缓存对象失效前,依据对象的相关状态信息判断是否需提前更新,避免在对象过了有效期后再更新造成对客户端响应的时延太长,能为客户端提供更精确的缓存对象,缓存对象的更新更加及时,提供了更智能的判断是否更新的方式,能适应越来越复杂的网络服务环境。
[0006]本申请第一方面实施例提出了一种缓存对象更新方法,应用于缓存服务器,包括:
[0007]接收客户端发送的对象获取请求,确定所述对象获取请求对应的缓存对象存在且有效期未到达;
[0008]获取所述缓存对象对应的相关状态信息;
[0009]根据所述相关状态信息,判断是否提前更新所述缓存对象;
[0010]如果是,则提前更新所述缓存对象,以及对所述对象获取请求进行响应。
[0011]在本申请的一些实施例中,所述根据所述相关状态信息,判断是否提前更新所述缓存对象,包括:
[0012]根据预设配置规则和所述相关状态信息,确定所述缓存对象对应的更新条件;
[0013]判断当前所述缓存对象是否满足所述更新条件;
[0014]如果是,则确定需要提前更新所述缓存对象;
[0015]如果否,则确定不需要提前更新所述缓存对象。
[0016]在本申请的一些实施例中,所述相关状态信息包括所述缓存对象对应的对象状态信息、所述客户端对应的客户端状态信息、缓存服务器对应的系统状态信息中的一种或多种的组合;
[0017]所述根据预设配置规则和所述相关状态信息,确定所述缓存对象对应的更新条件,包括:
[0018]根据所述相关状态信息,从预设配置规则中确定出所述缓存对象所符合的提前更新规则,所述提前更新规则包括提前更新所述缓存对象的提前时长;
[0019]根据所述提前更新规则和所述缓存对象的有效期,生成所述缓存对象对应的更新条件。
[0020]在本申请的一些实施例中,所述更新条件包括:位于所述缓存对象的有效期之前提前时长的范围内接收到所述缓存对象对应的对象获取请求的时刻,和/或,根据所述缓存对象的有效期及所述提前更新规则中包括的提前时长所确定的提前更新时刻。
[0021]在本申请的一些实施例中,所述根据所述相关状态信息,从预设配置规则中确定出所述缓存对象所符合的提前更新规则,包括:
[0022]根据所述相关状态信息包括的所述缓存对象的对象类型,从预设配置规则中确定出所述对象类型对应的提前时长。
[0023]在本申请的一些实施例中,还包括:若所述提前时长大于预设阈值,则从所述预设配置规则中获取周期性更新规则,所述周期性更新规则用于规定每隔预设单位时长更新一次;
[0024]将所述提前时长及所述周期性更新规则确定为所述缓存对象所符合的提前更新规则。
[0025]在本申请的一些实施例中,所述根据所述相关状态信息,从预设配置规则中确定出所述缓存对象所符合的提前更新规则,包括:
[0026]根据所述相关状态信息包括的所述缓存对象的对象标识信息,确定所述缓存对象在距离当前时间最近的预设时长内的被请求次数;
[0027]若所述被请求次数大于预设次数,则从预设配置规则中获取所述预设次数对应的提前时长及到期更新规则,所述到期更新规则用于规定在对象的有效期结束时更新;
[0028]将所述提前时长及所述到期更新规则确定为所述缓存对象所符合的提前更新规则。
[0029]在本申请的一些实施例中,所述更新所述缓存对象,以及对所述对象获取请求进行响应,包括:
[0030]从源服务器获取所述缓存对象对应的最新版本对象,将本地存储的所述缓存对象替换为所述最新版本对象;发送所述最新版本对象给所述客户端;或者,
[0031]发送所述缓存对象给所述客户端;同时通过本地后台从源服务器获取所述缓存对象对应的最新版本对象,将本地存储的所述缓存对象替换为所述最新版本对象。
[0032]在本申请的一些实施例中,所述从源服务器获取所述缓存对象对应的最新版本对象,包括:
[0033]生成所述缓存对象对应的对象更新请求;
[0034]在所述对象更新请求中添加所述缓存对象的版本标识;
[0035]发送所述对象更新请求给源服务器;
[0036]接收所述源服务器返回的所述版本标识对应的最新版本对象。
[0037]在本申请的一些实施例中,还包括:在所述缓存对象的有效期结束时再次更新所述缓存对象。
[0038]在本申请的一些实施例中,所述更新所述缓存对象包括:
[0039]若源服务器中不存在所述缓存对象对应的最新版本对象,则接收所述源服务器发送的第三状态码,所述第三状态码用于表示所述源服务器中所述缓存对象尚未更新。
[0040]本申请第二方面的实施例提供了一种缓存对象更新装置,包括:
[0041]接收模块,用于接收客户端发送的对象获取请求,确定所述对象获取请求对应的缓存对象存在且有效期未到达;
[0042]获取模块,用于获取所述缓存对象对应的相关状态信息;
[0043]判断模块,用于根据所述相关状态信息,判断是否提前更新所述缓存对象;
[0044]更新模块,用于如果所述判断模块判断出需要提前更新所述缓存对象,则提前更新所述缓存对象,以及对所述对象获取请求进行响应。
[0045]本申请第三方面的实施例提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序以实现上述第一方面所述的方法。
[0046]本申请第四方面的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种缓存对象更新方法,其特征在于,应用于缓存服务器,包括:接收客户端发送的对象获取请求,确定所述对象获取请求对应的缓存对象存在且有效期未到达;获取所述缓存对象对应的相关状态信息;根据所述相关状态信息,判断是否提前更新所述缓存对象;如果是,则提前更新所述缓存对象,以及对所述对象获取请求进行响应。2.根据权利要求1所述的方法,其特征在于,所述根据所述相关状态信息,判断是否提前更新所述缓存对象,包括:根据预设配置规则和所述相关状态信息,确定所述缓存对象对应的更新条件;判断当前所述缓存对象是否满足所述更新条件;如果是,则确定需要提前更新所述缓存对象;如果否,则确定不需要提前更新所述缓存对象。3.根据权利要求1所述的方法,其特征在于,所述相关状态信息包括所述缓存对象对应的对象状态信息、所述客户端对应的客户端状态信息、缓存服务器对应的系统状态信息中的一种或多种的组合;所述根据预设配置规则和所述相关状态信息,确定所述缓存对象对应的更新条件,包括:根据所述相关状态信息,从预设配置规则中确定出所述缓存对象所符合的提前更新规则,所述提前更新规则包括提前更新所述缓存对象的提前时长;根据所述提前更新规则和所述缓存对象的有效期,生成所述缓存对象对应的更新条件。4.根据权利要求3所述的方法,其特征在于,所述更新条件包括:位于所述缓存对象的有效期之前提前时长的范围内接收到所述缓存对象对应的对象获取请求的时刻,和/或,根据所述缓存对象的有效期及所述提前更新规则中包括的提前时长所确定的提前更新时刻。5.根据权利要求3或4所述的方法,其特征在于,所述根据所述相关状态信息,从预设配置规则中确定出所述缓存对象所符合的提前更新规则,包括:根据所述相关状态信息包括的所述缓存对象的对象类型,从预设配置规则中确定出所述对象类型对应的提前时长。6.根据权利要求3或4所述的方法,其特征在于,还包括:若所述提前时长大于预设阈值,则从所述预设配置规则中获取周期性更新规则,所述周期性更新规则用于规定每隔预设单位时长更新一次;将所述提前时长及所述周期性更新规则确定为所述缓存对象所符合的提前更新规则。7.根据权利要求3或4所述的方法,其特征在于,所述根据所述相关状态信息,从预设配置规则中确定出所述缓存对象所符合的提前更新规则,包括:根据所述相关状态信息包括的所述缓存对象的对象标识信息,确定所述缓存对象在距离当前时间最近的预设时长内的被请求次...

【专利技术属性】
技术研发人员:李逸骏许正达
申请(专利权)人:贵州白山云科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1