인프런 커뮤니티 질문&답변

램쥐뱅님의 프로필 이미지

작성한 질문수

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

FeignClient 사용 ①

GATEWAY-SERVICE 를 통하여 호출하지 않는 이유가 있을까요?

해결된 질문

23.03.19 17:08 작성

·

456

1

마이크로 서비스 사용간 (RestTemplate 혹은 Feign) 에서 Eureka 의 서비스 명으로 USER-SERVICE 같은 마이크로 서비스명을 통하여 직접 호출하면 결론적으로는 GATEWAY-SERVICE 를 통하여 사용했을때의 장점을 잃어버리는 것 같은데, 섹션 10 에서는 게이트웨이를 통하지 않고 직접 서비스를 호출하는 이유가 있을까요?

답변 1

1

Dowon Lee님의 프로필 이미지
Dowon Lee
지식공유자

2023. 03. 25. 13:07

안녕하세요, 이도원입니다.

apigateway-service는 사용자에게 여러 MSA들을 사용함에 있어서, 모든 서비스들의 IP 및 포트번호 등을 모르더라도 사용할 수 있게 끔 단일 진입점을 제공할 수 있습니다. Eureka에 등록된 서비스들을 호출하기 위해서는 실제 해당 서비스의 인스턴스명을 사용한다고 하더라도, 서비스의 IP 및 포트번호를 사용하게 되는 거지만, apigateway-service를 사용하게 되면, 사용자로부터의 호출은 오로지 apigateway-service를 향하게 되고, apigateway-service 내부에서 Eureka에 등록된 서비스(또는 해당 서비스를 직접) 들을 호출하게 됩니다. 말씀하신 것처럼 강의 중간중간에 직접 서비스를 호출하는 경우도 있기 하지만, 기본적으로 설명하려는 부분은 apigateway-service를 통해 사용자의 요청 처리를 단일화 하고, Service Registry에 등록된 마이크로서비스를 사용한다는 점은 다르지 않습니다.

감사합니다.

램쥐뱅님의 프로필 이미지
램쥐뱅
질문자

2023. 03. 26. 21:49

자세한 설명 감사드립니다.

후속 강의 기대하고 있겠습니다.

감사합니다.