Skip to content

FeignClient 적용기

kukim edited this page Aug 18, 2022 · 6 revisions

문서링크 : https://forkyy.tistory.com/10

작성자 : 포키

목차

  • 서론
  • Feign Client란
  • 장점
  • 단점
  • 프로젝트에 적용
  • 마무리

본문 내용 중

카카오 로그인을 구현하던 중, 카카오에서 제공하는 api에 Http 요청을 보내기 위해서는 클라이언트 객체를 사용해야했고 흔히 알고 있는 RestTemplate과 WebClient를 후보에 두고 고민하고 있었다.

그러던 중 FeignClient의 존재를 알게 되었다.

장점

  • SpringMvc에서 제공되는 어노테이션을 그대로 사용할 수 있다.
  • (Spring Cloud의 starter-openfeign을 사용할 경우)
  • RestTemplate 보다 간편하게 사용할 수 있으며 가독성이 좋다.
  • Feign Client를 사용한 통합 테스트가 비교적 간편하다.
  • 요청에 대한 커스텀이 간편하다.
    • ex) 요청이 실패했을때 몇초 간격으로 몇번 재요청을 보낼것인지를 구체적으로 정할 수 있다.

단점

  • 동기적으로 동작한다. 즉, 하나의 요청이 끝나야 다음 동작이 가능하다. (이건 비동기적으로 동작해야하는 경우 단점이 될 수 있을것 같다.)