스프링 5.0 마이크로서비스 2/e
도서명:스프링 5.0 마이크로서비스 2/e
저자/출판사:라제시,RV/에이콘출판
쪽수:540쪽
출판일:2018-02-09
ISBN:9791161751108
목차
1장. 쉽게 알아보는 마이크로서비스
__마이크로서비스로의 진화
____마이크로서비스로 진화의 촉매: 비즈니스적 요구
____마이크로서비스로 진화의 촉매: 기술
____명령형 아키텍처의 진화
__마이크로서비스란 무엇인가?
__마이크로서비스와 벌집
__마이크로서비스의 원칙
____서비스 하나에 책임도 하나
____마이크로서비스는 자율적
__마이크로서비스의 특징
____서비스는 일급 시민
____마이크로서비스는 가볍다
____다양한 언어로 구성할 수 있는 마이크로서비스
____마이크로서비스 환경에서의 자동화
____마이크로서비스를 지원하는 생태계
____동적이고 분산돼 있는 마이크로서비스
____붕괴 저항성, 빨리 실패하기, 자체 치유
__마이크로서비스 예제
____휴일 정보 포털의 예
____여행사 포털 사례
__마이크로서비스의 장점
____폴리글랏 아키텍처 지원
____실험과 혁신 유도
____탄력적이고 선택적인 확장
____대체 가능성
____유기적 시스템 구축 유도
____기술적 부채 경감
____다양한 버전의 공존
____자기 조직화 시스템 구축 지원
____이벤트 주도 아키텍처 지원
____데브옵스 지원
__정리
2장. 마이크로서비스 관련 아키텍처 스타일 및 사례
__서비스 지향 아키텍처(SOA)
____서비스 지향 통합
____기존 시스템의 현행화
____서비스 지향 애플리케이션
____SOA를 사용한 일체형의 전환
__12 요소 애플리케이션과의 관계
____단일 코드 베이스
____의존성 꾸러미
____환경설정 외부화
____후방 지원 서비스 접근성
____빌드, 출시, 운영의 격리
____무상태, 비공유 프로세스
____서비스를 포트에 바인딩해서 노출
____확장을 위한 동시성
____폐기 영향 최소화
____개발과 운영의 짝 맞춤
____로그 외부화
____관리자 프로세스 패키징
__서버리스 컴퓨팅
__람다 아키텍처
__삼총사의 만남: 데브옵스, 클라우드, 마이크로서비스
____마이크로서비스 실천 방식과 프로세스로서의 데브옵스
____마이크로서비스를 위한 셀프 서비스 인프라스트럭처로서의 클라우드
__리액티브 마이크로서비스
____리액티브 마이크로서비스 기반 주문 관리 시스템
__마이크로서비스 사용 사례
__마이크로서비스를 일찍 도입한 조직: 공통점 탐구
____공통적인 주제는 일체형의 전환
__마이크로서비스 프레임워크
__정리
3장. 스프링 부트로 만드는 마이크로서비스
__개발 환경 구축
__스프링 부트 RESTful 마이크 서비스 만들기
__스프링 부트 시작
__스프링 부트 마이크 서비스 개발
__첫 번째 스프링 부트 마이크로서비스 개발
____스프링 부트 마이크로서비스 테스트
__스프링 부트 마이크로서비스에 HATEOAS 기능 추가
__리액티브 스프링 부트 마이크로서비스
__스프링 웹플럭스를 활용한 리액티브 마이크로서비스
____스프링 부트와 래빗엠큐를 사용하는 리액티브 마이크로서비스
__보****구현
____마이크로서비스에 기본 보****적용
____OAuth2를 사용하는 마이크 서비스 보****
__다른 도메인에 존재하는 정보 요청 활성화
__스프링 부트 액추에이터
____JConsole을 활용한 모니터링
____SSH를 활용한 모니터링
____사용자 정의 서버 진단 모듈 추가
____사용자 정의 지표
__마이크로서비스 문서화
__고객 등록 마이크로서비스 예제
__정리
4장. 마이크로서비스 개념 적용
__마이크로서비스 설계 가이드라인
____마이크로서비스 경계 설정
____통신 방식 설계
____마이크로서비스 오케스트레이션
____마이크로서비스 하나에 얼마나 많은 종단점을 둘 것인가?
____가상머신 하나당 하나의 마이크로서비스 또는 다수의 마이크로서비스?
____룰 엔진: 공유 또는 내장?
____BPM의 역할과 작업 흐름
____마이크로서비스가 데이터 스토어를 공유할 수 있는가?
____마이크로서비스는 화면이 꼭 필요한가?
____트랜잭션 경계 설정
____서비스 종단점 설계 고려 사항
____공유 라이브러리 처리
____마이크로서비스에서의 사용자 인터페이스
____마이크로서비스의 게이트웨이 API
____ESB iPass 및 와 마이크로서비스의 사용
____서비스 버저닝 고려 사항
____크로스오리진 설계
____공유 참조 데이터 처리
____마이크로서비스와 대규모 데이터 작업
__정리
5장. 마이크로서비스 역량 모델
__마이크로서비스 역량 모델
__핵심 역량
____서비스 리스너와 라이브러리
____저장 기능
____서비스 구현
____서비스 종단점
__인프라스트럭처 역량
____클라우드
____컨테이터 런타임
____컨테이너 오케스트레이션
__지원 역량
____서비스 게이트웨이
____소프트웨어 정의 로드 밸런서
____중앙 집중형 로그 관리
____서비스 탐색
____보****서비스
____서비스 환경설정
____운영 모니터링
____의존 관계 관리
____데이터 호수
____신뢰성 메시징
__프로세스 및 통제 역량
____데브옵스
____자동화 도구
____컨테이너 레지스트리
____마이크로서비스 문서화
____참조 아키텍처 및 라이브러리
__마이크로서비스 성숙도 모델
____레벨 0: 전통 방식
____레벨 1: 초급
____레벨 2: 중급
____레벨 3: 고급
__마이크로서비스 도입을 위한 진입점
__정리
6장. 마이크로서비스의 진화: 사례 연구
__PSS 애플리케이션의 이해
____비즈니스 절차적 관점
____기능적 관점
____아키텍처 관점
____설계 관점
____구현 관점
____배포 관점
__일체형의 죽음
__문제점
__간극 메우기 중단
__회고
__마이크로서비스 구조대: 계획적 마이그레이션
____비즈니스 사례
____마이그레이션 방식
____마이크로서비스 경계 식별
____의존 관계 분석
____마이그레이션을 위한 마이크로서비스 우선순위 지정
____마이그레이션 중의 데이터 동기화
____참조 데이터 관리
____사용자 인터페이스와 웹 애플리케이션
____테스트 전략
____생태계 역량 구축
____모듈 마이그레이션은 필요할 때만
____마이크로서비스의 내부 계층 구조
____마이크로서비스 오케스트레이션
____다른 시스템과의 통합
____공유 라이브러리 관리
____예외 처리
__구현 목표
____프로젝트 구현
____프로젝트 실행 및 테스트
__심화 학습
__정리
7장. 스프링 클라우드 컴포넌트를 활용한 마이크로서비스 확장
__스프링 클라우드란?
__스프링 클라우드 출시 버전
__브라운필드 PSS 시스템 개발 환경설정
____스프링 클라우드 컨피그컨피그 서버로 마이크로서비스 구축
____컨피그 서버 설정
____컨피서버 URL의 이해
____환경설정 정보 변경 전파 및 반영
____환경설정 변경을 전파하는 스프링 클라우드 버스
____컨피그 서버에 고가용성 적용
____컨피그 서버 상태 모니터링
____컨피그 서버 환경설정 파일
____컨피그 서버를 사용하는 환경설정 외부화 완성
__유레카를 이용한 서비스 등록 및 탐색
____동적 서비스 등록 및 발견의 이해
____유레카의 이해
____유레카 서버 구성
____고가용성 유레카 서버
__주울 프록시 API 게이트웨이
____주울 설정
____고가용성 주울
__리액티브 마이브로서비스를 위한 스트림
__스프링 클라우드 시큐리티를 활용한 마이크로서비스 보호
__브라운필드 PSS 시스템 아키텍처 정리
__정리
8장. 마이크로서비스 로깅 및 모니터링
__로그 관리와 관련한 난제
__중앙 집중형 로깅
__로깅 솔루션
____클라우드 서비스
____내장 가능한 로깅 솔루션
____최상의 조합
____사용자 정의 로깅 구현
____스프링 클라우드 슬루스로 분산 로그 추적
__마이크로서비스 모니터링
____모니터링 도전 과제
____모니터링 도구
____마이크로서비스 의존 관계 모니터링
____장애를 견딜 수 있는 마이크로서비스를 위한 스프링 클라우드 히스트릭스
____터바인을 통한 히스트릭스 스트림 통합
__데이터 호수를 사용한 데이터 분석
__정리
9장. 도커 컨테이너와 마이크로서비스
__지금까지 만든 브라운필드 PSS 마이크로서비스의 한계
__컨테이너란 무엇인가?
__가상머신과 컨테이너의 차이
__컨테이너의 장점
__마이크로서비스와 컨테이너
__도커 소개
____도커 핵심 컴포넌트
__마이크로서비스를 도커에 배포
__도커에서 래빗엠큐 실행
__도커 레지스트리 사용
____도커 허브 구성
____도커 허브에 마이크로서비스 퍼블리싱
__클라우드에서의 마이크로서비스
____AWS EC2에 도커 설치
__EC2에서 브라운필드 서비스 실행
__컨테이너화의 미래
__정리
10장. 메소스와 마라톤을 이용한 도커화된 마이크로서비스 확장
__마이크로서비스 확장
____자동 확장 이해
____잃어버린 조각
__컨테이너 오케스트레이션
____컨테이너 오케스트레이션 도구의 중요성
____컨테이너 오케스트레이션 도구가 하는 일
____마이크로서비스와의 관계
____가상화와의 관계
____컨테이너 오케스트레이션 솔루션
__메소스와 마라톤을 이용한 컨테이너 오케스트레이션
__메소스 자세히 알아보기
__DCOS로 메소스 마라톤 구현
__브라운필드 마이크로서비스에 메소스와 마라톤 적용
____메소스, 마라톤과 관련 컴포넌트 설치
____메소스와 마라톤 실행
__브라운필드 PSS 서비스 준비
____브라운필드 PSS 서비스 배포
__정리
11장. 마이크로서비스 개발 라이프사이클
__마이크로서비스 개발을 위한 사례
____비즈니스 동기 및 가치에 대한 이해
____프로젝트에서 제품 개발로의 사고방식 전환
____개발 철학의 선택
____실행 가능한 최소한의 제품 개념 활용(MVP)
____레거시 난관 극복
____자기 조직화 팀의 구성
____셀프 서비스 클라우드 구축
____마이크로서비스 생태계 구축
____개발 라이프사이클 프로세스로서의 데브옵스
____가치 주도 계획
____지속적 모니터링과 피드백
__개발 사이클 자동화
____개발
____통합
____테스트
____배포
____모니터링과 피드백
____설정 관리
____마이크로서비스 개발 통제, 참조 아키텍처, 라이브러리
__정리