분류 전체보기(66)
-
[MSA] Spring Cloud Gateway (4) - Load Balancer
++) 해당 포스팅은 Eureka (Service Discovery)를 연동하여 프로젝트를 진행합니다. 사전 포스팅 참고. Load Balancer 로드 발란서가 무엇임? 왼쪽 그림을 참고해보자. 각 서비스 A와 B는 n개의 인스턴스로 돌아가고 있다. (여러 서버를 돌리고 있다는 뜻) 특정 이벤트로 사용자가 서버에 우르르 몰리게 될 때, 로드 발란서가 서버의 부하를 줄여주기 위해 사용자 접근을 여러 서버로 고르게 분산시켜주는 역할을 한다. 쉽게 말해서 교통정리 해주는 녀석임 프로젝트 구조 구조는 다음과 같다. API Gateway Service 프로젝트 : eureka client, 8000포트 first Service 프로젝트 : eureka client, 8081포트 second Service 프로젝..
2022.07.18 -
[MSA] Spring Cloud Gateway (3) - Custom Filter
++) 해당 포스팅은 이전 과정에서 진행했던 프로젝트를 사용하므로 이전 포스팅을 참고해야 합니다! https://born2bedeveloper.tistory.com/56 [MSA] Spring Cloud Gateway (2) - Filter 이전 포스팅 참고 API Gateway는 클라이언트와 서비스 사이의 통신을 담당하며 단일 진입점을 통해 일괄적으로 요청을 처리할 수 있다. Spring Cloud Gateway는 현재 스프링 클라우드에서 제시한 API Gatewa born2bedeveloper.tistory.com 저번 포스팅에서 언급했던 대로 이번에는 사용자 정의 필터를 만들어 볼 예정이다. CustomFilter 생성 기존 apigateway 프로젝트에 filter패키지를 추가하고 그 안에 Cus..
2022.07.15 -
[MSA] API Gateway Service - (4)
이전 포스팅 링크 (Service Discovery) 이전에는 Service Mesh 부분의 Service Discovery를 다뤘다. 이번엔 API Gateway에 대해 다뤄보자. API Gateway 위 그림처럼 마이크로 서비스가 3개가 있다고 가정했을 때, 클라이언트 쪽에서 직접 호출을 한다고 보자 클라이언트에서 직접 마이크로서비스의 주소를 통해(앤드포인트) 파라미터 전달하고 요청하는 방식이다. 이 떄 새로운 마이크로 서비스가 추가되거나 기존 마이크로 서비스가 변경되었으면 ? 클라이언트에서 직접 호출하는 앤드포인트가 바뀔테니 클라이언트 측을 변경해야한다. 서비스가 변경될 때마다 매번 클라이언트쪽에서 설정을 하는 것은 번거로운 일이다. 또한 클라이언트의 요청이 아무런 검증 없이 직접적으로 서비스에 닿..
2022.07.15 -
[MSA] Spring Cloud Gateway (2) - Filter
이전 포스팅 참고 API Gateway는 클라이언트와 서비스 사이의 통신을 담당하며 단일 진입점을 통해 일괄적으로 요청을 처리할 수 있다. Spring Cloud Gateway는 현재 스프링 클라우드에서 제시한 API Gateway 라이브러리이며, 비동기 방식을 지원한다. 이전에 간단한 프로젝트를 통해 Gateway를 사용해봤으니 이제 필터에 대한 실습을 진행해보자. Spring Cloud Gateway - Filter 스프링 클라우드 게이트웨이의 필터는 이렇게 구성되어있다. Gateway Handler Mapping 클라이언트로부터 어떤 요청이 들어왔는지 요청 정보를 받는 곳 Predicate 그 요청에 대한 사전 조건, 즉 어떤 이름으로 요청됐는지 조건을 분기해줌 Filter 사전, 사후 필터로 나뉨..
2022.07.15 -
[MSA] Spring Cloud Gateway (1) - 프로젝트 생성
https://born2bedeveloper.tistory.com/57 [MSA] API Gateway Service - (4) 이전 포스팅 링크 (Service Discovery) 이전에는 Service Mesh 부분의 Service Discovery를 다뤘다. 이번엔 API Gateway에 대해 다뤄보자. API Gateway 위 그림처럼 마이크로 서비스가 3개가 있다고 가정했을.. born2bedeveloper.tistory.com ***이전 포스팅에 Spring Cloud Gateway참고 개발 환경 : InteliJ (Ultimate Mode) / Maven / Java11 Spring Cloud Gateway 프로젝트 생성 inteliJ에서 File > New > Project... 클릭하여 ..
2022.07.14 -
[MSA] Netflix Eureka - Service Discovery 구현
Service Discovery에 대한 개념은 이 포스트를 참고할 것 Netflix Eureka 넷플릭스에서 개발한 Service discovery Tool로써 스프링 클라우드에 기부했다고 한다. (Flex...) https://spring.io/projects/spring-cloud-netflix Spring Cloud Netflix Spring Cloud Netflix features: Service Discovery: Eureka instances can be registered and clients can discover the instances using Spring-managed beans Service Discovery: an embedded Eureka server can be create..
2022.07.14