[Spring] FeignClient timeout 별도 설정하기

Allow·2024년 5월 3일
0

FeignClient timeout 별도 설정하기

feignClient를 사용하다보면 외부 API를 호출해야하는 상황이 생기는데, timeout정책을 default정책과 다르게 별도로 설정할 수 있다.

외부 API를 호출하는 feignClient를 아래 코드와 같이 작성한다고 가정한다.
feignClient의 name은 example-client이다.

@FeignClient(name = "example-client", url = "${example.url}")
public interface ExampleClient {
	@PostMapping(value = "/test")
	CompletableFuture<Void> test();
}

application.yml파일 수정

application.yml에 별도 설정할 feignClient 이름으로 설정할 수 있다.
위 코드에서 외부 호출 feignClient name으로 지정한 example-clientconfig하위로 작성하고, connectionTimeoutreadTimeout 시간을 지정하면 된다.

feign:
  client:
    config:
      default:
        connectTimeout: 30000
        readTimeout: 30000
      example-client:
        connectTimeout: 5000
        readTimeout: 5000

주의사항

별도로 설정한 timeout시간이 default timeout시간까지 변경되지는 않았는지 테스트를 꼭 해보는게 좋다.

profile
반갑습니다!

0개의 댓글