728x90
Eureka - SpringCloudGateWay 연동

Pom.xml

- Eureka Clent를 사용할 것이기 때문에 EurekaClient Dependency를 추가해 준다.
- FirstService, SecondService도 모두 등록시켜 주어야 한다.
application.yml


- SpringCloudGateway를 Eureka Cilent로 등록시킨다.
- SpringCloudGateway의 uri를 MSA로 변경하여 준다.
- lb://MSA이름으로 URI를 변경하여 주면 해당 Gateway가 해당 MSA로 Eureka 서버를 통해 전달받게 된다.

같은 서비스를 여러 번 실행시키기
IntelliJ 종속적 실행

- IntelliJ에 종속적으로 다른 Port 번호로 애플리케이션을 실행할 수 있다.
- 매번 실행 시마다 -Dserver.port를 VM -option으로 전달해 주어야 한다
maven build 후 파라미터로 포트 전달


- Maven을 통해 build를 한 뒤 jar 파일을 실행하는 시점에 -Dserver.port를 전달하여 원하는 Port로 실행한다.
Random Port


- port를 0번을 주어 랜덤 포트로 실행시킬 수 있다.
Port Log 남기기
어떤 인스턴스를 실행시키는지 확인할 방법이 없기 때문에 어떤 Port를 실행시키는지 log를 남기자


- @RequiredArgConstructor를 사용하여 생성자를 통해 환경변수를 주입받는다.
- 환경 변수의 getProperty 메서드를 통해 Port 번호를 가지고 오면 된다.
- yml의 값을 가져오는 것이 아닌 실제 할당받은 값을 가지고 올 것이기 때문에 local.server.port 값을 가지고 온다.
- Eureka Server가 라운드 로빈 방식으로 적정한 인스턴스를 선택해서 실행시켜 준다.
라운드 로빈 스케줄링 - 위키백과, 우리 모두의 백과사전
ko.wikipedia.org
728x90
'Spring Cloud로 개발하는 MSA > API Gateway Service' 카테고리의 다른 글
| Spring Cloud Gateway - Logging Filter (0) | 2022.05.03 |
|---|---|
| Spring Cloud Gateway - Global Filter (0) | 2022.05.03 |
| Spring Cloud Gateway - Custom Filter 적용 (0) | 2022.05.03 |
| Spring Cloud Gateway - Filter 적용 (0) | 2022.05.03 |
| Spring Cloud Gateway - 프로젝트 생성 (0) | 2022.05.03 |