장바구니 담기 close

장바구니에 상품을 담았습니다.

마이크로서비스 도입 이렇게 한다

마이크로서비스 도입 이렇게 한다

  • 샘뉴먼
  • |
  • 책만
  • |
  • 2021-01-20 출간
  • |
  • 308페이지
  • |
  • 180 X 235 X 15 mm
  • |
  • ISBN 9791189909253
판매가

28,000원

즉시할인가

25,200

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
25,200

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평




| 이 책에서 다루는 내용 |
■ 재구축 대신 마이크로서비스 마이그레이션을 고려하는 조직을 위한 이상적인 해결책
■ 기업이 마이크로서비스 도입에 관한 의사결정을 내리고 마이그레이션 시점을 판단하는 과정에 대한 절차와 조언
■ 커뮤니케이션, 통합, 레거시 시스템 마이그레이션 방법
■ 다양한 마이그레이션의 패턴과 적용 대상
■ 데이터베이스 동기화 전략을 중심으로 보는 데이터베이스 마이그레이션 사례
■ 다양한 아키텍처적인 리팩터링 패턴을 비롯한 애플리케이션 분해
■ 참조 무결성과 트랜잭션 무결성을 망가뜨릴 경우에 발생하는 영향력과 새로운 실패 모드를 비롯한, 데이터베이스 분해와 관련된 세부사항


| 이 책의 구성 |
이 책에서는 기존 시스템을 마이크로서비스 아키텍처로 분해하는 과정에서 어떻게 생각하고 실행할지에 대한 내용을 철저히 분석했다. 우리는 마이크로서비스 아키텍처와 관련된 많은 주제를 살펴볼 것이지만, 초점은 서비스의 분해 측면에 있다. 마이크로서비스 아키텍처에 대한 개괄을 알고 싶다면 나의 전작 『마이크로서비스 아키텍처 구축』 책으로 시작하기 바란다. 실은, 두 책을 함께 읽기를 강력하게 권장한다.

1장 ‘더도 덜도 아닌 딱 마이크로서비스’에는 마이크로서비스가 무엇인지에 대한 개요를 담았으며, 마이크로서비스 아키텍처로 이끈 사상을 자세히 살펴본다. 마이크로서비스를 처음 접하는 사람들이야 꼭 챙겨 읽어야 하지만, 경험이 풍부한 사람들도 1장은 건너뛰지 말기 바란다. 기술의 혼란 속에서, 마이크로서비스의 중요한 핵심 사상이 간혹 간과되는 경우가 있다. 바로 이런 개념을 이 책에서 거듭해서 다룰 것이다.

마이크로서비스를 좀 더 제대로 이해하면 좋으나, 마이크로서비스가 여러분에게 적합한지를 파악하는 것은 전혀 다른 문제다. 2장 ‘마이그레이션 계획하기’에서는 마이크로서비스가 자신에게 적합한지 여부를 평가하는 방법을 알려주며, 모놀리스에서 마이크로서비스 아키텍처로 전환 과정을 관리하는 방법에 대한 매우 중요한 몇 가지 지침을 제공한다. 여기서는 도메인 주도 설계부터 조직 변경 모델에 이르기까지, 심지어 마이크로서비스 아키텍처를 채택하지 않는 경우에도 큰 도움이 되는 중요한 토대를 다룰 것이다.

3장 ‘모놀리스 분할’과 4장 ‘데이터베이스 분해’에서는 모놀리스 분해, 실제 예제 탐색, 마이그레이션 패턴 추출 등과 관련된 기술적 측면을 철저하고 상세하게 살펴본다. 3장에서는 애플리케이션 분해 측면을 집중해서 다루고, 4장에서는 데이터 문제를 매우 상세하게 설명한다. 정말로 모놀리스 시스템에서 마이크로서비스 아키텍처로 이동하기를 원하면, 데이터베이스 일부를 분리해야 할 것이다!

5장 ‘마이크로서비스 도입 과정에서 직면하는 문제와 해법‘에서는 마이크로서비스 아키텍처가 성장함에 따라 여러분이 직면할 문제를 몇 가지 살펴본다. 마이크로서비스 시스템은 장점도 많지만, 이전에는 겪어보지 못한 많은 복잡성과 문제도 따라온다. 5장에서는 마이크로서비스와 관련된 문제가 발생할 때 문제를 발견하는데 도움이 되는 방법, 그리고 마이크로서비스와 관련해 점점 커지는 난관을 해소할 방법을 제공한다.

마지막으로, 한국어판 특별 부록 ‘기술의 진화로 짚어보는 마이크로서비스 도입의 허와 실’을 수록해 목표나 결과가 아닌, 여정으로서 바라보는 마이크로서비스에 관한 통찰을 담았다.

| 이 책의 독자 대상 |
■ 마이크로서비스의 전반적인 개념을 이해하고자 하는 분
■ 모놀리스에서 마이크로서비스 아키텍처로 전환 과정을 알고싶은 분
■ 모놀리스 분해, 마이그레이션 패턴 추출, 데이터베이스 분해 등과 관련된 기술적 측면이 궁금한 분
■ 마이크로서비스 도입 과정에서 직면하는 문제와 해법을 얻고자 하는 분
■ 시스템 배포 및 테스팅, 유지 보수에 관심 있는 IT 업계 종사자
■ 대용량 시스템의 효율적 분산 설계에 관심 있는 기업 CEO 및 경영진

| 이 책에서 다루는 마이크로서비스 마이그레이션 패턴 23가지 |
■ 경계 컨텍스트 단위의 저장소 패턴
■ 공유 데이터베이스 패턴
■ 교살자 무화과 애플리케이션 패턴
■ 다중 스키마 저장소 패턴
■ 데이터베이스 래핑 서비스 패턴
■ 데이터베이스 뷰 패턴
■ 데이터 소유권 변경 패턴
■ 데이터 접근 계층으로 작동하는 모놀리스 패턴
■ 변경 데이터 캡처 패턴
■ 병행 실행 패턴
■ 서비스 인터페이스로서 데이터베이스(DaaS) 인터페이스 패턴
■ 애플리케이션에서 데이터 동기화 패턴
■ 예광탄 기록 패턴
■ 외래 키를 코드로 이동 패턴
■ 전용 참조 데이터 스키마 패턴
■ 정적 참조 데이터 라이브러리 패턴
■ 정적 참조 데이터 서비스 패턴
■ 중복 정적 참조 데이터 패턴
■ 집계를 외부에 공개하는 모놀리스 패턴
■ 추상화에 의한 분기 패턴
■ 테이블 분할 패턴
■ 협업자 데코레이터 패턴
■ UI 컴포지션 패턴


목차


[1장] 더도 덜도 아닌 딱 마이크로서비스
마이크로서비스란 무엇인가?
__독립적인 배포 가능성
__비즈니스 도메인을 중심으로 하는 모델링
__데이터 소유권 문제
__마이크로서비스의 장점
__마이크로서비스가 야기하는 문제점
__사용자 인터페이스
__기술
__규모
__소유권
모놀리스
__단일 프로세스 모놀리스
__분산 모놀리스
__외부 블랙박스 시스템
__모놀리스의 문제점
__모놀리스의 장점
결합도와 응집력
__응집력
__결합도
더도 덜도 아닌 딱 도메인 주도 설계
__집계
__경계 컨텍스트
__집계와 경계 컨텍스트를 마이크로서비스에 매핑
__더 읽을거리
정리

[2장] 마이그레이션 계획하기
목표 이해하기
__3가지 핵심 질문
왜 마이크로서비스를 선택하려 하는가?
__팀 자율성 향상
__시장 출시 시간 단축
__부하를 다루기 위한 비용 효율적인 확장
__견고성 향상
__개발자 수 늘리기
__신기술 수용
마이크로서비스는 어떤 경우에 나쁜 선택일까?
__불분명한 도메인
__스타트업
__고객 설치형 소프트웨어와 관리형 소프트웨어
__좋은 이유를 못 찾겠다!
균형 조정
사람들과 함께 여정을 떠나다
조직 변화 구현
__위기감 조성
__혁신 추진체 구성
__비전과 전략 수립
__변화 비전 전달
__광범위한 조치를 위한 직원의 자율권 강화
__단기적인 성과 창출
__이익 통합과 더 많은 변화 추구
__혁신 문화의 정립
점진적인 마이그레이션의 중요성
__운영 환경은 중요하다
변화에 드는 비용
__가역적 결정과 비가역적 결정
__실험을 시도해볼 만한 곳
우리가 시작해야 할 지점은?
도메인 주도 설계
__작업 범위를 얼마나 넓게 잡아야 할까?
__이벤트 스토밍
__우선순위 지정을 위한 도메인 모델 사용
결합된 모델
팀 재구성하기
__변화하는 구조
__만병통치약은 없다
__변화 일으키기
__전문 기술 변경하기
전환이 순조로운지 어떻게 확인할까?
__정기 점검 사항
__정량적인 측정
__정성적인 측정
__매몰 비용 오류 방지
__새로운 방식에 마음을 열자
정리

[3장] 모놀리스 분할
모놀리스를 그대로 둘 것인가, 바꿀 것인가?
__잘라 내기, 복사 또는 재구현?
__모놀리스 리팩터링
마이그레이션 패턴
패턴: 교살자 무화과 애플리케이션
__작동 원리
__적용 대상
__사례: HTTP 리버스 프록시
__데이터?
__프록시 옵션
__프로토콜 변경
__사례: FTP
__사례: 메시지 가로채기
__그 밖의 프로토콜
__교살자 무화과 패턴의 다른 예
기능을 마이그레이션하는 동안 동작 방식 변경하기
패턴: UI 컴포지션
__사례: 페이지 컴포지션
__사례: 위젯 컴포지션
__사례: 마이크로 프론트엔드
__적용 대상
패턴: 추상화에 의한 분기
__작동 원리
__대체 메커니즘을 위한 분기 검증
__적용 대상
패턴: 병행 실행
__사례: 신용파생 가격 비교
__사례: 홈게이트 목록
__검증 기법
__스파이 사용
__깃허브 사이언티스트
__어둠의 출시와 카나리아 릴리스
__적용 대상
패턴: 협업자 데코레이터
__사례: 멤버십 프로그램
__적용 대상
패턴: 변경 데이터 캡처
__사례: 멤버십 카드 발급
__변경 데이터 캡처 구현
__적용 대상
정리

[4장] 데이터베이스 분해
패턴: 공유 데이터베이스
__패턴 다루기
__적용 대상
그러나 수행할 수 없다!
패턴: 데이터베이스 뷰
__공개된 계약으로서 데이터베이스
__표현할 뷰
__한계
__소유권
__적용 대상
패턴: 데이터베이스 래핑 서비스
__적용 대상
패턴: 서비스로서 데이터베이스(DaaS) 인터페이스
__매핑 엔진 구현
__뷰와의 비교
__적용 대상
소유권 양도
__패턴: 집계를 외부에 공개하는 모놀리스
__패턴: 데이터 소유권 변경
데이터 동기화
패턴: 애플리케이션에서 데이터 동기화
__1단계: 데이터 대량 동기화
__2단계: 이전 스키마에서 읽고 쓰기를 동기화
__3단계: 새 스키마에서 읽고 쓰기를 동기화
__이 패턴을 사용하는 사례
__적용 대상
패턴: 예광탄 기록
__데이터 동기화
__사례: 스퀘어의 주문 처리
__적용 대상
데이터베이스 분리
__물리적 데이터베이스 분리 vs 논리적 데이터베이스 분리
데이터베이스를 먼저 분할할까, 아니면 코드를 먼저 분할할까?
__데이터베이스를 먼저 분할
__코드를 먼저 분할
__데이터베이스와 코드를 함께 분할
__그렇다면 무엇을 먼저 분할해야 할까?
스키마 분리 사례
패턴: 테이블 분할
__적용 대상
패턴: 외래 키 관계를 코드로 이동
__조인 이동
__데이터 일관성
__적용 대상
__사례: 공유 정적 데이터
트랜잭션
__ACID 트랜잭션
__여전히 ACID이지만 원자성이 부족한가?
__2단계 커밋
__분산 트랜잭션? 그냥 아니라고 말하자
사가 패턴
__사가 실패 모드
__사가 패턴 구현
__사가와 분산 트랜잭션의 비교
정리

[5장] 마이크로서비스 도입 과정에서 직면하는 문제와 해법
서비스가 늘어날수록 고충도 커지게 마련
규모에 맞는 소유권
__문제가 드러나는 방식
__문제가 드러나는 시점
__잠재적인 해법
기존 호환성을 깨뜨리는 파괴적 변경
__문제가 드러나는 방식
__문제가 드러나는 시점
__잠재적인 해법
리포팅
__문제가 드러나는 시점
__잠재적인 해법
모니터링과 트러블슈팅
__문제가 드러나는 방식
__문제가 드러나는 시점
__잠재적인 해법
로컬에서 개발하는 동안 겪는 개발자 경험
__문제가 드러나는 방식
__문제가 드러나는 시점
__잠재적인 해법
너무 많은 것들을 실행
__문제가 드러나는 방식
__문제가 드러나는 시점
__잠재적인 해법
전 구간 테스트
__문제가 드러나는 방식
__문제가 드러나는 시점
__잠재적인 해법
전역 최적화와 지역 최적화 비교
__문제가 드러나는 방식
__문제가 드러나는 시점
__잠재적인 해법
견고성과 회복탄력성
__문제가 드러나는 방식
__문제가 드러나는 시점
__잠재적인 해법
외톨이 서비스
__문제가 드러나는 방식
__문제가 드러나는 시점
__잠재적인 해법
정리

마치면서

부록 A 참고문헌
부록 B 패턴 목록
부록 C 한국어판 특별 부록: 기술의 진화로 짚어보는 마이크로서비스 도입의 허와 실

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.