책 소개
마이크로서비스 아키텍처의 개념 이해와 구현을 위한 핵심 가이드!
마이크로서비스, 도메인 주도 설계, 데브옵스, 자바, 스프링부트, 스프링클라우드, 도커 등 각각의 주제에 관한 이론 및 기술적인 내용을 다루는 훌륭한 책들은 많습니다만, 이들 간의 관계를 설명하고 기획에서 개발 및 배포까지 일련의 생명주기를 다루는 책은 흔치 않습니다. 그래서 마이크로서비스를 제대로 이해하고 아키텍처를 구축하는 과정을 보여주고자 이 책을 기획하였습니다.
마이크로서비스와 아키텍처를 구성하는 기술 요소들의 동작 원리를 도식화하여 아키텍처 개념부터 기획, 설계, 구축, 모니터링 등 구현을 위한 모든 과정을 독자들이 직관적으로 쉽게 이해하도록 구성하였습니다. 또한, 책에서 다루는 예제 코드는 아키텍처 구성에 필요한 핵심적인 내용을 중심으로 실어서 실제 업무에 바로 이용할 수 있으며, 개발 입문자들도 쉽게 이해할 수 있는 수준으로 집필되었습니다.
이 책의 대상 독자
- 마이크로서비스의 전반적인 개념을 이해하고자 하는 분
- 프로젝트 현장에서 즉시 활용하고자 하는 분
- 자바, 스프링부트, 스프링클라우드 환경 구축을 배우고자 하는 분
- 웹 기반 아키텍처를 제대로 이해하고자 하는 분
작가 소개
삼성SDS에서 소프트웨어 아키텍트로 일하고 있다. KT, 삼성전자, 한국철도공사, 삼성인력개발원 등과의 다양한 프로젝트에 참여하였고, 사내 기술사 양성 멘토로도 활동 중이다. 현재는 MSA 진단 및 컨설팅에 주력하고 있으며, 도커나 블록체인(이오스, 이더리움)과 같은 최신 플랫폼 기술에도 관심이 많다.
목 차
CHAPTER 01 마이크로서비스 아키텍처의 이해
1.1 소프트웨어 아키텍처의 이해 1
소프트웨어 아키텍처란 무엇인가? 1
1.2 마이크로서비스 아키텍처 13
마이크로서비스 아키텍처의 이해 13
서비스지향 아키텍처 15
왜 마이크로서비스 아키텍처인가? 22
CHAPTER 02 클라우드 네이티브의 이해
2.1 클라우드 네이티브 26
클라우드 네이티브 애플리케이션 26
클라우드 네이티브 아키텍처 32
클라우드 네이티브 인프라 35
지속적 통합과 배포 37
데브옵스 40
2.2 컨테이너 42
컨테이너 개념 42
리눅스 컨테이너 45
도커 컨테이너 47
CHAPTER 03 마이크로서비스 이해와 기획
3.1 마이크로서비스 이해 54
마이크로서비스 개념 54
3.2 마이크로서비스 기획 62
마이크로서비스 식별 전략 63
마이크로서비스를 위한 고려 사항 74
CHAPTER 04 마이크로서비스 아키텍처 설계
4.1 마이크로서비스 설계 81
커피 전문점 서비스 이해 81
커피 전문점 마이크로서비스 개념 설계 84
커피 전문점 마이크로서비스 구조 설계 92
4.2 마이크로서비스 아키텍처 설계 102
마이크로서비스 아키텍처 구성 103
서비스 구성 체계 109
테스트 체계 113
지속적 통합 및 배포체계 설계 116
모니터링 체계 설계 118
CHAPTER 05 마이크로서비스 구현
5.1 마이크로서비스 구성 121
개발 환경 구성 121
커피 전문점 마이크로서비스 구성도 및 구성 요소 124
5.2 마이크로서비스 구현 136
커피 주문 마이크로서비스 구현 136
회원 확인 마이크로서비스 구현 145
CHAPTER 06 마이크로서비스 아키텍처 구축
6.1 마이크로서비스 아키텍처 구성 155
스프링 클라우드 아키텍처 참조 모델 155
스프링 클라우드 아키텍처 구성 요소 157
커피 전문점 마이크로서비스 아키텍처 구성도 및 구성 요소 157
6.2 커피 전문점 마이크로서비스 아키텍처 구축 160
설정 서버 160
유레카 서버 163
줄 서버 166
터빈 서버 171
히스트릭스 대시보드 서버 174
CHAPTER 07 마이크로서비스 빌드 배포
7.1 마이크로서비스 빌드 단위 181
독립 프로젝트 182
복수 프로젝트 183
7.2 마이크로서비스 배포 형태 184
실행 가능한 압축 파일 185
도커 이미지 185
7.3 소스 빌드 및 패키징 187
‘jar’ 빌드 및 패키징 188
‘war’ 빌드 및 패키징 192
도커 이미지 빌드 및 패키징 196
APPENDIX A 커피 전문점 서비스 요약 및 실행
A.1 커피 전문점 서비스 개요 199
커피 전문점 서비스 개념도 199
커피 전문점 서비스 시스템 구성도 및 구성 요소 200
A.2 커피 전문점 서비스 및 에코시스템 기동 202
에코시스템 기동 202
마이크로서비스 기동 205
테스트 테이블 및 데이터 생성 206
A.3 커피 전문점 마이크로서비스 실행 208
커피 주문 208
주문 처리 상태 확인 209
에코시스템 조회 211
참고문헌 213
찾아보기 215
- 단순 변심인 경우 : 상품 수령 후 7일 이내 신청
- 상품 불량/오배송인 경우 : 상품 수령 후 3개월 이내, 혹은 그 사실을 알게 된 이후 30일 이내 반품 신청 가능
반품사유 | 반품 배송비 부담자 |
---|---|
단순변심 | 고객 부담이며, 최초 배송비를 포함해 왕복 배송비가 발생합니다. 또한, 도서/산간지역이거나 설치 상품을 반품하는 경우에는 배송비가 추가될 수 있습니다. |
고객 부담이 아닙니다. |
진행 상태 | 결제완료 | 상품준비중 | 배송지시/배송중/배송완료 |
---|---|---|---|
어떤 상태 | 주문 내역 확인 전 | 상품 발송 준비 중 | 상품이 택배사로 이미 발송 됨 |
환불 | 즉시환불 | 구매취소 의사전달 → 발송중지 → 환불 | 반품회수 → 반품상품 확인 → 환불 |
- 결제완료 또는 배송상품은 1:1 문의에 취소신청해 주셔야 합니다.
- 특정 상품의 경우 취소 수수료가 부과될 수 있습니다.
결제수단 | 환불시점 | 환불방법 |
---|---|---|
신용카드 | 취소완료 후, 3~5일 내 카드사 승인취소(영업일 기준) | 신용카드 승인취소 |
계좌이체 |
실시간 계좌이체 또는 무통장입금 취소완료 후, 입력하신 환불계좌로 1~2일 내 환불금액 입금(영업일 기준) |
계좌입금 |
휴대폰 결제 |
당일 구매내역 취소시 취소 완료 후, 6시간 이내 승인취소 전월 구매내역 취소시 취소 완료 후, 1~2일 내 환불계좌로 입금(영업일 기준) |
당일취소 : 휴대폰 결제 승인취소 익월취소 : 계좌입금 |
포인트 | 취소 완료 후, 당일 포인트 적립 | 환불 포인트 적립 |
- 단순변심으로 인한 반품 시, 배송 완료 후 7일이 지나면 취소/반품 신청이 접수되지 않습니다.
- 주문/제작 상품의 경우, 상품의 제작이 이미 진행된 경우에는 취소가 불가합니다.
- 구성품을 분실하였거나 취급 부주의로 인한 파손/고장/오염된 경우에는 취소/반품이 제한됩니다.
- 제조사의 사정 (신모델 출시 등) 및 부품 가격변동 등에 의해 가격이 변동될 수 있으며, 이로 인한 반품 및 가격보상은 불가합니다.
- 뷰티 상품 이용 시 트러블(알러지, 붉은 반점, 가려움, 따가움)이 발생하는 경우 진료 확인서 및 소견서 등을 증빙하면 환불이 가능하지만 이 경우, 제반 비용은 고객님께서 부담하셔야 합니다.
- 각 상품별로 아래와 같은 사유로 취소/반품이 제한 될 수 있습니다.
상품군 | 취소/반품 불가사유 |
---|---|
의류/잡화/수입명품 | 상품의 택(TAG) 제거/라벨 및 상품 훼손으로 상품의 가치가 현저히 감소된 경우 |
계절상품/식품/화장품 | 고객님의 사용, 시간경과, 일부 소비에 의하여 상품의 가치가 현저히 감소한 경우 |
가전/설치상품 | 전자제품 특성 상, 정품 스티커가 제거되었거나 설치 또는 사용 이후에 단순변심인 경우, 액정화면이 부착된 상품의 전원을 켠 경우 (상품불량으로 인한 교환/반품은 AS센터의 불량 판정을 받아야 합니다.) |
자동차용품 | 상품을 개봉하여 장착한 이후 단순변심의 경우 |
CD/DVD/GAME/BOOK등 | 복제가 가능한 상품의 포장 등을 훼손한 경우 |
상품의 시리얼 넘버 유출로 내장된 소프트웨어의 가치가 감소한 경우 | |
노트북, 테스크탑 PC 등 | 홀로그램 등을 분리, 분실, 훼손하여 상품의 가치가 현저히 감소하여 재판매가 불가할 경우 |