6.5.3 넷플릭스 Feign 클라이언트로 서비스 호출
스프링 로드 밸런서를 지원하는 RestTemplate 클래스 대안은 넷플릭스의 Feign 클라이언트 라이브러리다. Feign 라이브러리는 REST 서비스를 호출하는 데 다른 접근 방식을 취한다. 이 방식을 사용하려면 개발자는 먼저 자바 인터페이스를 정의한 후 스프링 클라우드 로드 밸런서가 호출할 유레카 기반 서비스를 매핑하기 위해 스프링 클라우드 애너테이션들을 추가해야 한다. 인터페이스를 정의하는 것 외에 서비스를 추가하려고 부가적으로 작성해야 할 코드는 없다.
라이선싱 서비스에서 Feign 클라이언트를 사용하려면 새로운 애너테이션인 @EnableFeignClients를 src/main/java/com/optimagrowth/license/LicenseServiceApplication.java 클래스 파일에 추가해야 한다. 코드 6-15에서 이 코드를 보여 준다.
코드 6-15 라이선싱 서비스에서 스프링 클라우드 및 넷플릭스 Feign 클라이언트 사용하기
@SpringBootApplication
@EnableFeignClients ➊
public class LicenseServiceApplication {
public static void main(String[] args) {
SpringApplication.run(LicenseServiceApplication.class, args);
}
}
➊ 코드에서 Feign 클라이언트를 사용하려고 추가한다.