MSA

· 공부/MSA
Users Microservice - JPA ① VO 생성 RequestUser @Data public class RequestUser { @NotNull(message = "Email cannot be null") @Size(min = 2, message = "Email not me less than two characters") @Email private String email; @NotNull(message = "Name cannot be null") @Size(min = 2, message = "Name not be less than two characters") private String name; @NotNull(message = "Password cannot be null") @Size(mi..
· 공부/MSA
Users Microservice 개요 APIs 기능 URI(API Gateway 사용 시) URI(API Gateway 미사용 시) HTTP Method 사용자 정보 등록 /user-service/users /users POST 전체 사용자 조회 /user-service/users /users GET 사용자 정보, 주문 내역 조회 /user-service/users/{user_id} /users/{user_id} GET 작동 상태 확인 /user-service/users/health_check /users/health_check GET 환영 메시지 /user-service/users/welcome /users/welcome GET Users Microservice 프로젝트 생성 설정 프로젝트 생성 De..
· 공부/MSA
E-commerce 애플리케이션 CATALOG-SERVICE USER-SERVICE ORDER-SERVICE 전체적인 애플리케이션 구성 구성요소 설명 Git Repository 마이크로서비스 소스 관리 및 프로파일 관리 Config Server Git 저장소에 등록된 프로파일 정보 및 설정 정보 Eureka Server 마이크로서비스 등록 및 검색 API Gateway Server 마이크로서비스 부하 분산 및 서비스 라우팅 Microservices 회원 MS, 주문 MS, 상품(카테고리) MS Queuing System 마이크로서비스 간 메시지 발행 및 구독 애플리케이션 APIs 마이크로서비스 RESTful API HTTP Method Catalog Service /catalog-service/catal..
· 공부/MSA
Eureka 연동 Eureka Client 추가 - pom.xml, application.yml apigateway-service, first-service, second-service 3개의 프로젝트에 모두 추가 dependencies 확인(pom.xml 확인) - 세 개 프로젝트에 모두 적용 pom.xml apigateway-service, first-service, second-service 3개의 프로젝트에 eureka-client 의존성 추가 Maven일 경우 org.springframework.cloud spring-cloud-starter-netflix-eureka-client Gradle일 경우 implementation 'org.springframework.cloud:spring-clou..
· 공부/MSA
Spring Cloud Gateway - Logging Filter Logging Filter는 커스텀 필터이다. LoggingFilter.java 생성 OrderGatewayFilter 형식 @Override public GatewayFilter apply(Config config) { GatewayFilter filter = new OrderedGatewayFilter((exchange, chain) -> {필터 내용}, 순서); return filter; } @Component @Slf4j public class LoggingFilter extends AbstractGatewayFilterFactory { public LoggingFilter() { super(Config.class); } @Ove..
· 공부/MSA
Spring Cloud Filter - Global Filter 차이점 CustomFilter : Route마다 지정해줘야 한다. Global Filter 공통 필터 어떤 Filter보다 먼저 실행되고, 제일 마지막에 종료된다. GlobalFilter PRE CustomFilter PRE CustomFilter POST GlobalFilter POST 순으로 로그가 출력 될 것이다. Global Filter GlobalFilter.java 생성 @Component @Slf4j public class GlobalFilter extends AbstractGatewayFilterFactory { public GlobalFilter() { super(Config.class); } @Override public ..
· 공부/MSA
Spring Cloud Gateway - CustomFilter 적용 apigateway-service 프로젝트 CustomFilter.java 생성 CustomFilter를 사용하려면 AbstractGatewayFilterFactory를 상속받아야 한다. @Component @Slf4j public class CustomFilter extends AbstractGatewayFilterFactory { public CustomFilter() { super(Config.class); } @Override public GatewayFilter apply(Config config) { // # Custom Pre Filter return ((exchange, chain) -> { ServerHttpReques..
· 공부/MSA
filter 종류 prefilter : 사전에 호출 postfilter : 사후에 호출 작업 방법 방법1) 자바코드로 작업 방법2) 프로퍼티(property)로 작업 predicate : 요청정보가 들어오면 어떤 것인지 판단 방법1) 자바 코드 작업 기존에 설정해둔 application.yml에서 routes를 주석처리 해준다. 자바코드로 작성해보자! apigateway-service 프로젝트 Config.java클래스 생성 @Configuration을 추가하게 되면 Spring Boot가 처음 Bootsrap에 의해서 작동을 하게 될 때 @Configuration이 달려있는 Annotation을 모아서 메모리에 먼저 등록하는 작업을 한다. 이때 등록하는 빈의 이름을 RoterLocator로 등록한다. ..
· 공부/MSA
Spring Cloud Gateway 프로젝트 생성 dependencies: Lombok, Gateway, Eureka Discovery Client application.yml server: port: 8000 eureka: client: register-with-eureka: false fetch-registry: false service-url: defaultZone: http;//localhost:8761/eureka spring: application: name: apigateway-service cloud: gateway: routes: - id: first-service uri: http://localhost:8081/ predicates: # 조건절 - Path=/first-service/..
· 공부/MSA
API Gateway API Gateway Service는 사용자가 설정한 Routing 설정에 따라 각 endpoint(client side에서 microservice 주소를 직접 이용)로 client를 대신해서 요청하고, 응답을 받아서 다시 client에게 전달해주는 Proxy(대리인)역할을 한다. 시스템의 내부 구조는 숨기고 외부의 요청에 대해 적절한 형태로 가공해서 응답할 수 있는 장점이 있다. API Gateway Service가 없을 시에 client에서는 microservice를 호출할 때, client쪽에서 endpoint를 설정하게 된다. 그런데 만약 microservice의 설정이 변경되어 endpoint가 변경되거나, 새로운 microservice가 추가되어 이에 해당하는 endpoi..
sesam
'MSA' 태그의 글 목록 (3 Page)