스프링 마이크로서비스를 시작하며...
2019. 10. 9. 23:51ㆍSpring Micro Services
반응형
Intro..
2달정도 동안 책과 검색을 통해 공부한 마이크로서비스에 대한 정리를 할려고 한다. 스프링 마이크로서비스의 장점은 각 서비스들이 분리 됨으로서 전체 서비스에 영향을 미치지 않고 일부 서비스에 영향을 주므로 사용자에게는 중단없는 서비스 제공이 가능 할 것이고 개발 조직에게는 API별로 관리가 명확해 질 것이다.
하지만 서비스를 어느정도로 분리하는냐에 따라 관리의 복잡도가 증가 할 수 있다는 생각이 든다.
마이크로서비스 아키텍처
전통적인 서비스 방식은 하나의 서버에 화면, 서버 모든 프로그램을 관리하는 방식이다. 지금도 많은 회사들이 이러한 방식으로 되어 있는 걸로 알고 있다. 하지만 마이크로서비스는 위에서도 언급하였지만 서비스를 분리함으로서 중단없는 서비스제공이 가능할 것 이다.
위의 그림을 보면 주문,결제,상품 API를 분리 하고 클라이언트는 주문서비스를 호출 하면 클라이언트의 주문정보를 저장하고 결제API를 호출 하여서 결제 처리 후 정상적인 결제가 이루어진경우 상품API를 호출 하여 상품의 재고 정보를 관리한다.
사전 준비 사항
- JDK1.8+ 이상 설치
- 데이터베이스 설치 - PostgreSQL
- 테이블 생성
예제 목록
- RestTemplate을 이용한 주문서비스
- Eureka Sever, Client를 이용한 주문서비스
- 리본(Ribbon)클라이언트를 이용한 주문서비스
- 페인(Feign)클라이언트를 이용한 주문서비스
ERD
간단히 예제를 위한 테이블 구조이다.
참고
서적: 마스터링스프링클라우드
동영상강의: https://www.youtube.com/watch?v=y8IQb4ofjDo&list=PLqq-6Pq4lTTZSKAFG6aCDVDP86Qx4lNas
반응형