System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 请求响应方法、装置及电子设备制造方法及图纸_技高网

请求响应方法、装置及电子设备制造方法及图纸

技术编号:40305646 阅读:5 留言:0更新日期:2024-02-07 20:50
本申请提供一种请求响应方法、装置及电子设备,方法包括在第一服务接收到目标资源请求时,若第一服务的缓存中存在目标资源,且该目标资源请求是目标资源过期后的首个资源请求,第一服务根据将第二服务返回的目标资源返回给请求的发起方;当目标资源请求不是目标资源过期后的首个资源请求,将缓存中查询到的目标资源返回给各请求的发起方;通过本申请提供的方法,可以提升针对目标资源的多个资源请求的响应效率,整体上缩短针对目标资源的多个资源请求的响应时长,提升了通信资源的利用率。

【技术实现步骤摘要】

本申请涉及计算机,尤其涉及一种请求响应方法、装置及电子设备


技术介绍

1、在娱乐、游戏发行、运营活动等短时间内访问请求量大的场景下,若一服务(假设为服务a)在短时间内接收到多个请求第一资源(第一资源可以是图像资源、文本资源、音频资源、网页等)的请求,而且该第一资源由与服务a不同的另一服务(假设为服务b)提供,使得服务b在短时间内被多次访问,导致大量网络资源被占用,通信资源的利用率不高。


技术实现思路

1、有鉴于此,本申请实施例提出了一种请求响应方法、装置及电子设备,以解决相关技术中在跨服务请求资源的场景下通信资源的利用率不高的问题。

2、本申请实施例是采用以下技术方案来实现的:

3、第一方面,本申请实施例提供了一种请求响应方法,应用于部署第一服务的电子设备,方法包括:若所述第一服务接收到用于请求目标资源的目标资源请求,在所述第一服务的缓存中查询所述目标资源;若在所述缓存中查询到所述目标资源,且确定所述目标资源请求不是所述缓存中的目标资源过期后首个请求所述目标资源的资源请求,向所述目标资源请求的发起方发送缓存中的所述目标资源;若在所述缓存中查询到所述目标资源,且确定所述目标资源请求是所述缓存中的目标资源过期后首个请求所述目标资源的资源请求,向提供所述目标资源的第二服务发送数据请求;接收所述第二服务响应于所述数据请求返回的目标资源;向所述目标资源请求的发起方返回所述第二服务返回的目标资源,并更新所述缓存中所述目标资源的有效期。

4、第二方面,本申请实施例提供了一种请求响应装置,装置包括:查询模块,用于若所述第一服务接收到用于请求目标资源的目标资源请求,在所述第一服务的缓存中查询所述目标资源;执行模块,用于若在所述缓存中查询到所述目标资源,且确定所述目标资源请求不是所述缓存中的目标资源过期后首个请求所述目标资源的资源请求,向所述目标资源请求的发起方发送缓存中的所述目标资源;以及,用于若在所述缓存中查询到所述目标资源,且确定所述目标资源请求是所述缓存中的目标资源过期后首个请求所述目标资源的资源请求,向提供所述目标资源的第二服务发送数据请求;接收模块,用于接收所述第二服务响应于所述数据请求返回的目标资源;输出模块,用于向所述目标资源请求的发起方返回所述第二服务返回的目标资源,并更新所述缓存中所述目标资源的有效期。

5、在一些实施方式中,执行模块包括加锁单元和发送单元,加锁单元用于若在缓存中查询到目标资源且确定目标资源请求是缓存中的目标资源过期后首个请求目标资源的资源请求,对目标资源请求加锁;发送单元用于响应于目标资源请求加锁成功,向提供目标资源的第二服务发送数据请求;输出模块还包括解锁单元,解锁单元用于对已加锁的目标资源请求进行解锁。

6、在一些实施方式中,执行模块还用于若在缓存中未查询到目标资源,向第二服务发送数据请求;输出模块还用于为目标资源设定有效期并将第二服务返回的目标资源存储到缓存中。

7、在一些实施方式中,缓存中的资源以键值对的形式存储,请求响应装置还包括缓存管理模块,缓存管理模块用于若缓存中的键达到缓存的键容量阈值,释放缓存中参考资源占用的键,并删除缓存中的参考资源;基于目标资源的资源标识,在缓存中创建新键;输出模块还用于将为目标资源设定的有效期和目标资源作为新键的值,并存储到缓存中。

8、在一些实施方式中,缓存管理模块还用于确定缓存中各项资源在第一时间段内的使用频次参数;将缓存中使用频次参数最小的资源作为参考资源。

9、在一些实施方式中,执行模块还用于若在缓存中查询到目标资源且确定缓存中的目标资源处于有效期内,向目标资源请求的发起方发送从缓存中查询到的目标资源。

10、在一些实施方式中,请求响应装置还包括策略确认模块,策略确认模块用于若第一服务接收到用于请求目标资源的目标资源请求,确定提供目标资源的第二服务;若第二服务的资源更新频率小于更新频率阈值,在第一服务的缓存中查询目标资源;若第二服务的资源更新频率不小于更新频率阈值,向第二服务发送数据请求,以使第二服务响应数据请求返回查询获得的目标资源。

11、第三方面,本申请实施例提供了一种电子设备,电子设备包括:一个或多个处理器;存储器;一个或多个程序,其中一个或多个程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序配置用于执行如上述方法。

12、第四方面,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有程序代码,程序代码可被处理器调用执行上述方法。

13、第五方面,本申请实施例提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现上述方法的步骤。

14、本申请实施例提供的一种请求响应方法、装置及电子设备,方法在第一服务接收到用于请求目标资源的目标资源请求后,若在第一服务的缓存中查询到目标资源,且目标资源请求是缓存中的目标资源过期后首个请求目标资源的资源请求,第一服务根据该目标资源请求向提供目标资源的第二服务发送数据请求,并根据第二服务返回的目标资源去更新第一服务的缓存中的目标资源的有效期,保证了目标资源的时效性;若在缓存中查询到目标资源,且确定目标资源请求不是缓存中的目标资源过期后首个请求目标资源的资源请求,向目标资源请求的发起方发送缓存中的目标资源;在对缓存中的目标资源过期后首个请求目标资源的资源请求进行处理的过程中(即向第二服务发送数据请求并等待第二服务的返回结果的过程中),针对其他请求目标资源的请求,利用缓存中的目标资源进行响应,而不需要针对目标资源的全部资源请求均等待第二服务的返回结果,仅需要目标资源过期后首个请求目标资源的资源请求等待第二服务的返回结果即可,由此,在缓存中的目标资源过期的情况下,可以提升对针对目标资源的多个资源请求的响应效率,整体上缩短针对目标资源的多个资源请求的响应时长,提升用户体验,而且,在一时间段内的第一服务接收到针对目标资源的多个资源请求,第一服务仅需要向第二服务发送一次数据请求,可以提升第一服务与第二服务之间的通信资源的利用率。

15、本申请的这些方面或其他方面在以下实施例的描述中会更加简明易懂。

本文档来自技高网...

【技术保护点】

1.一种请求响应方法,其特征在于,应用于部署第一服务的电子设备,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述若在所述缓存中查询到所述目标资源且确定所述目标资源请求是所述缓存中的目标资源过期后首个请求所述目标资源的资源请求,向提供所述目标资源的第二服务发送数据请求,包括:

3.根据权利要求1或2所述的方法,其特征在于,所述在所述第一服务的缓存中查询所述目标资源之后,所述方法还包括:

4.根据权利要求3所述的方法,其特征在于,所述缓存中的资源以键值对的形式存储;

5.根据权利要求4所述的方法,其特征在于,所述释放所述缓存中参考资源占用的键,并删除所述缓存中的所述参考资源之前,所述方法还包括:

6.根据权利要求1所述的方法,其特征在于,所述在所述第一服务的缓存中查询所述目标资源之后,所述方法还包括:

7.根据权利要求1所述的方法,其特征在于,所述若所述第一服务接收到用于请求目标资源的目标资源请求,在所述第一服务的缓存中查询所述目标资源,包括:

8.一种请求响应装置,其特征在于,包括:</p>

9.一种电子设备,其特征在于,包括:

10.一种计算机可读存储介质,其特征在于,包括:计算机可读存储介质存储有程序代码,程序代码可被处理器调用执行如权利要求1-7中任意一项的方法。

11.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现权利要求1-7中任意一项方法的步骤。

...

【技术特征摘要】

1.一种请求响应方法,其特征在于,应用于部署第一服务的电子设备,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述若在所述缓存中查询到所述目标资源且确定所述目标资源请求是所述缓存中的目标资源过期后首个请求所述目标资源的资源请求,向提供所述目标资源的第二服务发送数据请求,包括:

3.根据权利要求1或2所述的方法,其特征在于,所述在所述第一服务的缓存中查询所述目标资源之后,所述方法还包括:

4.根据权利要求3所述的方法,其特征在于,所述缓存中的资源以键值对的形式存储;

5.根据权利要求4所述的方法,其特征在于,所述释放所述缓存中参考资源占用的键,并删除所述缓存中的所述参考资源之前,所述方法还包括:

【专利技术属性】
技术研发人员:陈伟付科
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

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

1