通常整个微服务系统会有统一的接口超时时间设定,但也会存在一些特殊的业务场景,接口需要的较长的超时时间,比如:上传(较大文件)、下载等等。这种默认的超时设置就不能满足了,如果统一把超时时间都设置长,就起不到超时熔断的效果了
这个时候只能针对单个接口做超时时长设置
1.Request.Options
如果在程序自定义了Request.Options对象,则配置文件设置的超时配置无效。
在接口调用方使用自定义Request.Options
//自定义接口超时时间(20秒)
Request.Options options =new Request.Options(20, TimeUnit.SECONDS,20,TimeUnit.SECONDS,true);
在接口定义方接收Request.Options
@PostMapping("/add")
ResponseData<Integer> add(Request.Options options, @RequestBody AddBO bo);
此时add接口的超时时间被定义为20s,与系统统一的设定无关
网友评论