Spring boot 2.4.X부터는 zuul, hystrix가 더 이상 제공되지 않는다.(maintenance 상태)
새로운 서비스가 추가되거나
기존 마이크로서비스 주소가 변경되거나
파라미터의 인자값이 변경되었을 경우
마이크로서비스들은 독립적으로 배포가 가능하니 문제가 없다.
클라이언트 사이드에서는
기존 호출방식이 마이크로서비스 엔드포인트를 직접 호출하는 방식일 경우, 클라이언트의 어플리케이션 수정이 불가피했다.
그래서 단일 진입점을 가지고 있는 형태가 필요했다.
진입점을 가지고 있는 구조.(API Gateway)
모든 마이크로서비스로 요청되는 모든 정보에 대해 일괄적으로 처리 가능하다.
사용 가능 기능
Spring Cloud에서 MSA간 통신
1. RestTemplate
하나의 웹 어플리케이션에서 다른 어플리케이션을 호출하는 방법.
2. Feign Client
하나의 인터페이스를 생성한 후, 외부로 호출하고 싶은 추가적인 마이크로서비스 이름을 등록한다.
직접적인 ip, port번호 없이 이름으로 호출이 가능하다는 특징이 있다.
Netflix Ribbon : Client side Load Balancer
- 비동기 처리가 잘 안되서 최근에는 사용을 잘 안한다.
- msa 이름으로 호출 가능.
- Health Check : 해당하는 서비스가 제대로 작동중인지 체크 가능.
- Spring Boot 2.4에서 Maintenance 상태.
외부 호출시 ip port가 아닌 서비스 명칭으로 호출 가능.
Netflix Zuul
구성 :
- First Service
- Second Service
- Netflix Zuul
Boot 2.4에서 Maintenance 상태이다.
Ref :
https://www.inflearn.com/course/lecture?courseSlug=%EC%8A%A4%ED%94%84%EB%A7%81-%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C-%EB%A7%88%EC%9D%B4%ED%81%AC%EB%A1%9C%EC%84%9C%EB%B9%84%EC%8A%A4&unitId=68407
'스프링 스터디 (인프런) > API GATEWAY' 카테고리의 다른 글
Spring Cloud Gateway - Filter 적용2 (0) | 2023.08.12 |
---|---|
Spring Cloud Gateway - Filter 적용 (0) | 2023.08.07 |
Spring Cloud GateWay 세팅 (0) | 2023.07.30 |
Netflix Zuul Filter 적용하기 (0) | 2023.07.29 |
Netflix Zuul 프로젝트 생성 (0) | 2023.07.16 |