목록 보기
openfeign 소개와 운영 서버 적용기
백엔드

openfeign 소개와 운영 서버 적용기

what's min
what's min
2024년 7월 9일

두줄요약

Monolithic에서 MSA로 전환하며 복잡해진 서비스 간 통신을 OpenFeign으로 단순화하는 방법을 소개했습니다. 선언적 클라이언트와 공통 설정으로 헤더, 재시도, 타임아웃을 운영 환경에 적용하는 구성을 다뤘습니다.

핵심 내용

  • Monolithic Architecture에서 MSA로 전환하며 다수 WAS 간 통신이 복잡해질 때, RestTemplate보다 Feign이 코드 가독성과 사용성을 높이는 대안으로 소개
  • Feign은 Spring MVC 스타일 애노테이션으로 API 호출을 선언적으로 작성할 수 있고, Client-side Loadbalancing, Retry, Timeout, Request Header 설정을 함께 다루기 쉬움
  • @EnableFeignClients, @FeignClient, RequestInterceptor, Retryer, Request.Options, Logger.Level 등으로 운영 서버 적용 구성을 설명
  • Request Header는 Configuration 또는 메서드 애노테이션으로 지정할 수 있고, Eureka와 Resilience4j, Spring Cloud Loadbalancer 연계도 언급

적용해볼 점

  • 반복적인 REST 호출 코드를 Feign 인터페이스로 추상화해 호출부 단순화
  • 공통 헤더, 재시도, 타임아웃, 로깅 정책을 Configuration으로 분리해 일괄 관리
  • 서비스 디스커버리와 회복탄력성 설정을 함께 묶어 MSA 통신 안정성 강화

다음 읽기

비슷한 주제의 백엔드 글

AOP 기반 Feature Toggle 라이브러리

AOP 기반 Feature Toggle 라이브러리의 전체 구조와 핵심 동작 흐름을 정리했습니다.\n멀티모듈, 라우팅 어노테이션, Registry, WebClient 조회를 통해 기능 전환을 유연하게 처리했습니다.

펫프렌즈
펫프렌즈
백엔드

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...