2017-10-26 12 views
1

현재 이와 같은 인프라가 있습니다. enter image description here 클라이언트가로드 밸런서에 도달하고 라운드 로빈을 내 응용 프로그램 서버 (JBOSS)에 연결합니다. 따라서 REST 엔드 포인트를 제공하는 서버에 전쟁으로 배포 된 서비스는 거의 없습니다. 모든 서비스는 애플리케이션 서버를 통해 단일 포트에 노출됩니다 (기존 방식)단일 포트를 사용하는 스프링 부트 응용 프로그램

응용 프로그램 서버 (너무 무거움)에서 서비스를 마이 그 레이션하고 스프링 부트 응용 프로그램 (JAR)으로 변환 할 계획입니다. . 이 같은 인프라를 재조정 할 계획입니다. enter image description here

따라서 스프링 부트 jar로 변환하면 각 서비스가 다른 포트에 노출됩니다. 클라이언트와의 충돌을 피하기 위해 부하 분산 장치의 포트를 변경할 계획이 아닙니다.

응용 프로그램의 컨텍스트 루트를 식별하여 서비스를 라우팅 할 수있는 방법이 있습니까?

는 (I 응용 프로그램 서버가이 문제를 해결할 수 있습니다 알고있다. 그러나 다만 다른 뷰를 알고 싶어) 원하는 포트에 각각의 상황에 맞는 경로를 전달하는 앱은 봄 부팅 앞에 nginx를 넣을 수 있습니다

답변

1

응용 프로그램을 봄 부팅으로 변환 할 계획이므로 Netflix Zuul을 사용해도 좋습니다.

Zuul은 동적 라우팅, 모니터링, 복원력, 보안 등을 제공하는 에지 서비스입니다.

경우에 따라 필터를 만들 필요가 없습니다. 요청을 REST 엔드 포인트로 라우팅하기위한 구성을 간단하게 작성할 수 있습니다.

+0

나는 이것을 성공적으로 조사했다. – edwin

+1

http://microservices.io/patterns/service-registry.html – edwin

1

.

애플리케이션 서버가이 문제를 해결할 수 있으므로 NGINX 나 Apache HTTP Server와 같은 다른 도구로이 동작을 복제하면됩니다.

+0

은 [this] (https://serverfault.com/a/693117)입니다. – edwin

+0

예, 그게 무슨 뜻인가요 – cahen

+0

고마워, 그건 논리적 인 소리. – edwin