이 글은 인프런 Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA) 강의를 듣고 쓴 글입니다.
E-commerce 어플리케이션
개요
서비스는 3가지 마이크로 서비스를 사용한다. 상품 관련 카탈로그 서비스, 회원 서비스, 주문 서비스이다.
그림에 나와있는 대로 기능을 개발할 것이고, 4, 6번 부분에서 마이크로 서비스간의 통신이 일어난다.
6번에서는 마이크로서비스 간의 요청을 사용하고, 4번에서는 KAFKA 라는 Message Queue 서비스를 사용한다.
구성
구성요소설명
Git Repository | 마이크로서비스 소스 관리 및 프로파일 관리 |
Config Server | Git 저장소에 등록된 프로파일 정보 및 설정 정보 |
Eureka Server | 마이크로서비스 등록 및 검색 |
API Gateway Server | 마이크로서비스 부하 분산 및 서비스 라우팅 |
Microservices | 회원 MS, 주문 MS, 상품(카테고리) MS |
Queuing System | 마이크로서비스 간 메시지 발행 및 구독 |
각 서비스들은 포트번호가 다른 채로 Eureka Server에 등록될 것이고, 통신을 위해 Message Queuing System도 사용할 것이다.
서비스의 라우팅과 부하 분산을 위해 API Gateway Server를 사용한다.
여러 설정 정보를 빌드에 포함시키지 않고 동적으로 참조할 수 있도록 Config Server도 사용한다.
계획된 어플리케이션 API 들은 다음과 같다.
마이크로서비스 | RESTful API | HTTP Method |
Catalog Service | /catalog-service/catalogs : 상품 목록 제공 | GET |
User Service | /user-service/users : 사용자 정보 등록 | POST |
/user-service/users : 전체 사용자 조회 | GET | |
/user-service/users/{user_id} : 사용자 정보, 주문 내역 조회 | GET | |
Order Service | /order-service/users/{user_id}/orders : 주문 등록 | POST |
/order-service/users/{user_id}/orders : 주문 확인 | GET |
'[MSA] Spring Cloud로 개발하는 마이크로서비스 애플리케이션' 카테고리의 다른 글
섹션 5 : Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA) (0) | 2023.07.28 |
---|---|
섹션 4 : Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA) (0) | 2023.07.28 |
섹션 2 : Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA) (2) | 2023.07.21 |
섹션 1 : Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA) (0) | 2023.07.20 |
섹션 0 : Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA) (0) | 2023.07.19 |