实现RestTemplate请求超时时间动态调整的方法及装置制造方法及图纸

技术编号:38996983 阅读:29 留言:0更新日期:2023-10-07 10:27
本申请提供了一种实现RestTemplate请求超时时间动态调整的方法及装置,所述方法包括:获取配置中心的配置信息,基于配置信息,并通过setConnectTimeout方法对RestTemplate实例化;定义线程上下文对象类HttpContextHolder,用以存储当前线程所需使用请求配置的RequestConfig对象;响应于执行HTTP请求,通过拦截器拦截当前执行的HTTP请求,获取当前请求调用的每个第三方API的请求路径和HTTP方法,得到与所述配置信息中对应的预设超时时间,并将所述预设超时时间作为当前执行HTTP请求的超时时间。本申请所述的实现RestTemplate请求超时时间动态调整的方法及装置能够针对不同API进行超时时间设置,增加了系统的灵活性。了系统的灵活性。了系统的灵活性。

【技术实现步骤摘要】
实现RestTemplate请求超时时间动态调整的方法及装置


[0001]本申请属于业务访问
,尤其涉及一种实现RestTemplate请求超时时间动态调整的方法及装置。

技术介绍

[0002]在业务系统开发的过程中,通常会对接多个第三方系统,即第三方系统提供HTTP接口供业务系统进行调用,如数据查询接口,数据同步接口等。RestTemplate是从Spring3.0开始支持的一个HTTP请求工具,它提供了常见的REST请求方案的模版,例如GET请求、POST请求、PUT请求、DELETE请求以及一些通用的请求执行方法,而在使用RestTemplate进行HTTP请求调用时,通常会设置连接数、连接超时时间等关键参数。由于对接的不同第三方系统接口存在不同的性能,可能A系统提供的写入接口响应时间平均需要2秒钟,而B系统提供的统计查询接口可能由于系统老旧、历史数据大等原因导致响应时间平均需要30秒,在高并发时响应时间可能更久。如果针对所有接口只是使用全局超时时间配置,那么无法应对不同第三方系统的不同超时时间要求。因此亟需一种方案来对RestTe本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种实现RestTemplate请求超时时间动态调整的方法,其特征在于,所述方法包括:获取配置中心的配置信息,基于所述配置信息,并通过setConnectTimeout方法对RestTemplate实例化;其中,所述配置信息至少包括全局超时时间、每个第三方API的请求路径、HTTP方法和预设超时时间;定义线程上下文对象类HttpContextHolder,用以存储当前线程所需使用请求配置的RequestConfig对象;其中,所述RequestConfig对象为RestTemplate中发起的HTTP的核心配置类;响应于执行HTTP请求,通过拦截器拦截当前执行的HTTP请求,获取当前请求调用的每个第三方API的请求路径和HTTP方法,得到与所述配置信息中对应的预设超时时间,并将所述预设超时时间作为当前执行HTTP请求的超时时间。2.根据权利要求1所述的实现RestTemplate请求超时时间动态调整的方法,其特征在于,所述获取配置中心的配置信息,基于所述配置信息,并通过setConnectTimeout方法对RestTemplate实例化;其中,所述配置信息至少包括全局超时时间、每个第三方API的请求路径、HTTP方法和预设超时时间,包括:配置中心配置RestTemplate的全局超时时间、每个第三方API的请求路径、HTTP方法以及预设超时时间参数;响应于Spring容器启动,读取所述配置中心配置的参数,将所述参数以key

value的形式存储于内存中,并通过setConnectTimeout方法对RestTemplate实例化。3.根据权利要求1所述的实现RestTemplate请求超时时间动态调整的方法,其特征在于,在响应于执行HTTP请求调用,通过拦截器拦截当前执行的HTTP请求,获取当前请求调用的每个第三方API的请求路径和HTTP方法,得到与所述配置信息中对应的预设超时时间,并将所述预设超时时间作为当前执行HTTP请求的超时时间之前,还包括:定义拦截器,以拦截RestTemplate执行的HTTP请求,并记录请求执行的全局超时时间、每个第三方API的请求路径、HTTP方法、预设超时时间。4.根据权利要求3所述的实现RestTemplate请求超时时间动态调整的方法,其特征在于,所述响应于执行HTTP请求调用,通过拦截器拦截当前执行的HTTP请求,获取当前请求调用的每个第三方API的请求路径和HTTP方法,得到与所述配置信息中对应的预设超时时间,并将所述预设...

【专利技术属性】
技术研发人员:邹虎
申请(专利权)人:紫光云技术有限公司
类型:发明
国别省市:

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

1