이 상품은 구매 후 지원 기기에서 예스24 eBook앱 설치 후 바로 이용 가능한 상품입니다.
|
PART 1 기초CHAPTER 1 마이크로서비스란?_1.1 마이크로서비스 살펴보기_1.2 마이크로서비스의 핵심 개념 _1.3 모놀리스_1.4 활성화 기술_1.5 마이크로서비스의 장점_1.6 마이크로서비스의 고충_1.7 마이크로서비스를 사용해야 하는가? 요약CHAPTER 2 마이크로서비스 모델링 방법_2.1 뮤직코프 소개 _2.2 올바른 마이크로서비스 경계를 만드는 것은 무엇인가? _2.3 결합 유형 _2.4 딱 도메인 주도 설계만큼 _2.5 마이크로서비스를 위한 도메인 주도 설계 사례_2.6 비즈니스 도메인 경계에 대한 대안 _2.7 혼합 모델과 예외요약CHAPTER 3 모놀리스 분해_3.1 목표를 가져라_3.2 점진적 마이그레이션 _3.3 모놀리스가 적인 경우는 드물다_3.4 무엇을 먼저 나눌까? _3.5 계층별 분해_3.6 유용한 분해 패턴 _3.7 데이터 분해에 대한 우려 요약CHAPTER 4 마이크로서비스 통신 방식_4.1 프로세스 내부에서 프로세스 사이로 _4.2 프로세스 간 통신을 위한 기술: 다양한 선택 _4.3 마이크로서비스 통신 방식_4.4 패턴: 동기식 블로킹 _4.5 패턴: 비동기식 논블로킹_4.6 패턴: 공통 데이터를 통한 통신_4.7 패턴: 요청 및 응답 통신 _4.8 패턴: 이벤트 기반 통신_4.9 조심해서 진행하라 요약PART 2 구현CHAPTER 5 마이크로서비스 통신 구현_5.1 이상적인 기술을 찾아서_5.2 기술 선택 _5.3 직렬화 포맷_5.4 스키마_5.5 마이크로서비스 간의 변경 처리_5.6 중단 변경 피하기_5.7 중단 변경 관리하기 _5.8 마이크로서비스 세계에서 DRY와 코드 재사용의 위험_5.9 서비스 디스커버리 _5.10 서비스 메시와 API 게이트웨이 _5.11 서비스 문서화요약CHAPTER 6 워크플로_6.1 데이터베이스 트랜잭션_6.2 분산 트랜잭션 - 2단계 커밋_6.3 분산 트랜잭션 - 그냥 안 된다고 하라_6.4 사가 패턴요약CHAPTER 7 빌드_7.1 지속적 통합에 대한 간략한 소개 _7.2 빌드 파이프라인과 지속적 제공_7.3 소스 코드와 빌드를 마이크로서비스에 매핑하기요약CHAPTER 8 배포_8.1 논리적에서 물리적으로_8.2 마이크로서비스 배포의 원칙_8.3 배포 방법 _8.4 어떤 배포가 적합할까?_8.5 쿠버네티스와 컨테이너 오케스트레이션 _8.6 점진적 제공요약CHAPTER 9 테스트_9.1 테스트 유형_9.2 테스트 범위_9.3 서비스 테스트의 구현_9.4 까다로운 엔드투엔드 테스트의 구현 _9.5 엔드투엔드 테스트를 피해야 할까? _9.6 개발자 경험_9.7 운영 환경 전 테스트에서 운영 환경 내 테스트로_9.8 교차 기능 테스트요약 CHAPTER 10 모니터링에서 관찰가능성으로_10.1 분열, 공황 그리고 혼란 _10.2 단일 마이크로서비스, 단일 서버 _10.3 단일 마이크로서비스, 다수 서버 _10.4 다수 마이크로서비스, 다수 서버_10.5 관찰가능성 대 모니터링_10.6 관찰가능성의 구성 요소_10.7 표준화 _10.8 도구 선택_10.9 기계화된 전문가 _10.10 시작하기요약 CHAPTER 11 보안_11.1 핵심 원칙_11.2 사이버 보안의 다섯 가지 기능_11.3 애플리케이션 보안의 기초_11.4 암묵적 신뢰 대 제로 트러스트 _11.5 데이터 보안_11.6 인증과 권한 부여CHAPTER 12 회복 탄력성_12.1 회복 탄력성이란?_12.2 장애는 어디에서나 발생한다_12.3 얼마나 많아야 너무 많은 건가?_12.4 기능 저하_12.5 안정성 패턴_12.6 위험 분산_12.7 CAP 정리 _12.8 카오스 엔지니어링_12.9 비난 요약 CHAPTER 13 확장_13.1 확장의 네 가지 축_13.2 결합 모델_13.3 작게 시작하라 _13.4 캐싱 _13.5 자동 확장_13.6 다시 시작하기요약 PART 3 사람CHAPTER 14 사용자 인터페이스_14.1 디지털을 향해 _14.2 소유권 모델_14.3 스트림 정렬 팀을 향해 _14.4 패턴: 모놀리식 프론트엔드 _14.5 패턴: 마이크로 프론트엔드_14.6 패턴: 페이지 기반 분해_14.7 패턴: 위젯 기반 분해_14.8 제약 _14.9 패턴: 중앙 집계 게이트웨이_14.10 패턴: 프론트엔드를 위한 백엔드(BFF)_14.11 그래프QL _14.12 하이브리드 방식요약 CHAPTER 15 조직 구조_15.1 느슨하게 결합된 조직 _15.2 콘웨이의 법칙_15.3 팀 규모 _15.4 콘웨이의 법칙 이해_15.5 소규모 팀, 대규모 조직 _15.6 자율성에 관해 _15.7 강력한 소유권 대 집단 소유권 _15.8 활성화 팀_15.9 공유 마이크로서비스_15.10 내부 오픈 소스_15.11 플러그 가능한 모듈식 마이크로서비스 _15.12 고아 서비스 _15.13 사례 연구: realestate.com.au_15.14 지리적 분포_15.15 콘웨이의 역법칙_15.16 사람들요약 CHAPTER 16 진화하는 아키텍트_16.1 이름에 내포된 것은?_16.2 소프트웨어 아키텍트란? _16.3 변화를 가능하게 _16.4 아키텍처에 대한 진화적 비전 _16.5 시스템 경계 정의_16.6 사회적 구조물 _16.7 거주 가능성_16.8 원칙적 접근법 _16.9 진화적 아키텍처 가이드 _16.10 스트림 정렬 조직의 아키텍처 _16.11 팀 구축_16.12 필수 기준 _16.13 거버넌스와 포장된 길 _16.14 기술 부채 _16.15 예외 처리 요약 종합정리: 조언부터 향후 전망까지 핵심 용어집
|
Sam Newman
샘 뉴먼의 다른 상품
정성권의 다른 상품
|
“마이크로서비스 아키텍처는 어떻게 만드는 것인가?”는 현업에서 자주 듣게 되는 질문 중 하나입니다. 이에 대한 정답을 찾기 위해 오랫동안 다양한 노력을 해왔지만 명쾌한 답변을 찾기 어렵습니다. 이는 시장이 계속 변화하면서 설계, 개발, 배포, 테스팅 등 다양한 분야를 넘나들어야 하기 때문입니다. 2017년 초판 출간 후 전면 개정된 『마이크로서비스 아키텍처 구축(전면 개정판)』은 이러한 부분을 충족시킬 만큼 광범위한 기술 주제를 한 권에 담아 설명합니다. 마이크로서비스 아키텍처 구축에 관한 현실적인 문제를 더 구체적이고 깊숙하게 파고들면서, 마이크로서비스 아키텍처 개념을 더 쉽게 이해하고 적용하기 위한 심도 있는 가이드를 제시합니다. 전면 개정판에 추가된 내용ㆍ마이크로서비스와 관련된 광범위한 개요 설명 및 소프트웨어 배포 프로세스의 측면과 마이크로서비스 아키텍처를 채택함으로써 발생하는 이후 모습까지 설명ㆍ클라우드 기술 동향에 맞춘 사용자 인터페이스, 쿠버네티스, 컨테이너 오케스테이션, 서버리스 기술에 대한 새로운 정보 제공 ㆍ다양한 마이크로서비스 커뮤니케이션 유형 및 마이크로서비스 간 통신 구현에 필요한 기술ㆍ사가 및 분산 트랜잭션 비교, 마이크로서비스를 포함한 비즈니스 프로세스 모델링 방법ㆍ마이크로서비스에서 리포지토리 및 빌드를 매핑하는 방법ㆍ소프트웨어 개발에 필요한 모니터링, 관찰가능성과 회복 탄력성ㆍ다양한 마이크로서비스 도입 사례와 사례 연구로 현실적인 마이크로서비스 문제 대상 독자 ㆍMSA를 도입하여 구축(또는 운영 중인)하려고 하는 시스템 아키텍트, 프로그래머, 프로젝트 관리 담당자ㆍ시스템 배포 및 테스팅, 유지 보수에 관심 있는 IT 업계 종사자ㆍ대용량 시스템의 효율적 분산 설계에 관심 있는 모든 분이 책의 구성1부_기초1장 마이크로서비스란?마이크로서비스를 일반적인 관점에서 소개하고 이 책에서 이후 자세히 다룰 여러 주제를 간략히 설명한다.2장 마이크로서비스 모델링 방법마이크로서비스에 적합한 경계를 찾는 데 도움이 되는 정보 은닉, 결합, 응집력, 도메인 주도 설계(DDD)와 같은 개념의 중요성을 살펴본다.3장 모놀리스 분해기존 모놀리식 애플리케이션을 마이크로서비스로 분해하는 방법에 대한 몇 가지 지침을 제공한다.4장 마이크로서비스 통신 방식비동기 호출과 동기 호출, 요청 및 응답, 이벤트 기반의 협업 방식을 비롯한 다양한 종류의 마이크로서비스 통신 방식을 설명한다.2부_구현5장 마이크로서비스의 통신 구현마이크로서비스 간 통신을 구현하는 데 사용되는 특정 기술을 자세히 살펴본다.6장 워크플로사가와 분산 트랜잭션을 비교하고 여러 마이크로서비스가 관련된 비즈니스 프로세스를 모델링하는 데 사가가 어느 정도 유용한지 살펴본다.7장 빌드마이크로서비스를 리포지터리와 빌드로 매핑하는 것에 대해 설명한다.8장 배포컨테이너, 쿠버네티스, FaaS를 살펴보는 등 마이크로서비스의 배포와 관련된 수많은 방법을 설명한다.9장 테스트엔드투엔드 테스트로 인해 발생하는 문제를 포함해 마이크로서비스 테스트에 대한 어려움과 소비자 중심 계약 및 운영 중 테스트가 어떻게 도움이 되는지를 논의한다.10장 모니터링에서 관찰가능성으로도구와 관련해 구체적으로 추천하면서, 정적 모니터링 활동에 집중하는 것으로부터 마이크로서비스 아키텍처의 관찰가능성을 향상시키는 방법에 대해 보다 광범위한 생각으로 전환하는 것을 다룬다.11장 보안마이크로서비스 아키텍처는 공격의 표면 영역을 넓힐 수 있지만 심층적으로 방어할 수 있는 기회도 더 많이 제공한다. 이 장에서는 이러한 균형을 살펴본다.12장 회복 탄력성회복 탄력성이란 무엇이고 마이크로서비스가 애플리케이션의 회복 탄력성을 향상시키는 데 어떤 역할을 할 수 있는지를 자세히 살펴본다.13장 확장이 장에서는 확장의 네 가지 축을 간략히 설명하고, 이를 조합해 마이크로서비스 아키텍처를 확장하는 방법을 설명한다.3부_사람14장 사용자 인터페이스전담 프론트엔드 팀에서 벗어나는 것에서 BFF와 그래프QL의 사용에 이르기까지 마이크로서비스와 사용자 인터페이스가 어떻게 함께 작동할 수 있는지 살펴본다.15장 조직 구조마이크로서비스 아키텍처의 맥락에서 스트림 정렬 팀과 활성화 팀이 어떤 역할을 하는지 설명하는 데 중점을 둔다.16장 진화하는 아키텍트마이크로서비스 아키텍처는 고정적이지 않으므로 시스템 아키텍처에 대한 관점을 바꿔야 할수 있다. 이 장에서는 이러한 주제를 심도 있게 다룬다.
|