장바구니 담기 close

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

스프링 50 마이크로서비스 2/e

스프링 50 마이크로서비스 2/e

  • 라제시 RV
  • |
  • 에이콘출판
  • |
  • 2018-02-09 출간
  • |
  • 540페이지
  • |
  • 188 X 236 X 26 mm
  • |
  • ISBN 9791161751108
판매가

35,000원

즉시할인가

31,500

카드할인

0원(즉시할인 0%)

적립금

1,750원 적립(5%적립)

배송비

무료배송

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

추가혜택

네이버페이 무조건 1%적립+ 추가 1%적립

수량
+ -
총주문금액
31,500

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

출판사서평

★ 이 책에서 다루는 내용 ★

■ 마이크로서비스 아키텍처와 장점
■ 마이크로서비스 개발 시 마주치는 공통적인 문제에 대한 해결 방법
■ 마이크로서비스를 개발하는 데 사용할 스프링 부트와 스프링 클라우드의 사용 방법
■ 마이크로서비스 로깅과 모니터링 방법
■ 스프링 5.0의 리액티브 프로그래밍을 활용한 현대적인 클라우드 네이티브 애플리케이션 개발 방법
■ 도커, 메소스, 마라톤으로 인터넷을 통해 들어오는 대규모의 다양한 요청을 처리하는 마이크로서비스 관리 방법
■ 스프링에 포함된 최신 리액티브 스트림에 대한 통찰과 애플리케이션의 회복성과 신축성을 높이는 방법

★ 이 책의 대상 독자 ★

이 책에는 스프링 프레임워크, 스프링 부트, 스프링 클라우드와 도커, 메소스, 마라톤을 사용해서 인터넷을 통해 들어오는 대규모의 다양한 요청을 처리할 수 있는 견고한 마이크로서비스를 설계하고자 하는 아키텍트의 흥미를 끌 수 있는 내용이 포함돼 있다. 마이크로서비스 역량 모델은 이 책에서 다룬 도구나 기술을 넘어서 아키텍트가 더 나은 솔루션을 고안해내는 데 도움을 줄 것이다.
이 책은 인터넷을 통해 들어오는 대규모의 다양한 요청을 처리할 수 있고, 현대적인 비즈니스 요구를 충족시켜줄 수 있는 클라우드 기반의 애플리케이션을 만들고자 하는 스프링 개발자를 주요 대상으로 한다. 이 책은 개발자들이 마이크로서비스가 정확히 무엇인지, 오늘날 왜 이렇게 화두가 됐는지를 실제 현장에서의 사례와 실습 가능한 코드 예제를 통해 알 수 있게 구성돼 있다. 개발자는 간단한 RESTful 서비스를 만들고, 이를 엔터프라이즈 수준의 마이크로서비스 생태계로 점차 확장시켜 나갈 수 있다.

★ 이 책의 구성 ★

1장. ‘쉽게 알아보는 마이크로서비스’에서는 마이크로서비스를 소개하고 탄생 배경, 기본 개념, 진화에 대해 알아본다.
2장. ‘마이크로서비스 관련 아키텍처 스타일 및 사례’에서는 마이크로서비스와 서비스 지향 아키텍처의 관계, 클라우드 네이티브(Cloud native)와 12 요소 애플리케이션의 개념을 알아보고, 각 기술의 보편적인 사례를 살펴본다.
3장. ‘스프링 부트로 만드는 마이크로서비스’에서는 스프링 프레임워크를 사용해서 REST 기반이자 메시지 기반의 마이크로서비스를 스프링 부트로 만드는 방법을 알아보고, 스프링 부트의 몇 가지 핵심 기능도 살펴본다.
4장. ‘마이크로서비스 개념 적용’에서는 엔터프라이즈 수준의 마이크로서비스를 만들 때 개발자가 직면하는 난관을 자세히 살펴보면서 마이크로서비스 구현의 실무적인 측면을 다뤄보고, 마이크로서비스 생태계를 성공적으로 관리하는 데 필요한 기능도 알아본다.
5장. ‘마이크로서비스 역량 모델’에서는 마이크로서비스 생태계를 성공적으로 관리하는 데 필요한 마이크로서비스 역량 모델을 알아본다. 또한 기업이 마이크로서비스 도입을 고려할 때 도움이 될 마이크로서비스 성숙도 평가 모델도 함께 다룬다.
6장. ‘마이크로서비스 진화: 사례 연구’에서는 브라운필드 항공사 애플리케이션을 진화시켜가는 실무 사례를 통해 앞에서 배운 마이크로서비스 개념을 어떻게 적용하는지 알아본다.
7장. ‘스프링 클라우드 컴포넌트를 활용한 마이크로서비스 확장’에서는 스프링 클라우드 기술 스택을 이용해 앞에서 만든 스프링 부트 애플리케이션 확장 방법을 알아본다. 스프링 클라우드의 아키텍처와 다양한 컴포넌트에 대해 자세히 살펴보고, 여러 컴포넌트를 어떻게 통합해서 사용하는지 알아본다.
8장. ‘마이크로서비스 로깅 및 모니터링’에서는 마이크로서비스 개발 시 로깅과 모니터링의 중요성을 다룬다. 마이크로서비스를 사용할 때 필요한 중앙 집중형 로깅과 오픈소스 도구를 활용한 모니터링, 스프링 프로젝트와의 통합 방법 등에 대한 우수 사례를 자세히 살펴본다.
9장. ‘도커 컨테이너와 마이크로서비스’에서는 마이크로서비스 관점에서 컨테이너화(containerization)의 개념을 알아본다. 메소스(Mesos)와 마라톤(Marathon)을 사용해서 대규모 배포에서 사용자 정의 라이프사이클 관리자를 대체할 수 있는 차세대 구현 방식을 알아본다.
10장. ‘메소스와 마라톤을 이용한 도커화된 마이크로서비스 확장’에서는 마이크로 서비스의 자동 프로비저닝과 배포에 대해 알아본다. 대규모 배포에서 도커 컨테이너를 활용하는 방법도 살펴본다.
11장. ‘마이크로서비스 개발 라이프사이클’에서는 마이크로서비스 개발 프로세스와 관습에 대해 알아보고, 데브옵스와 지속적 전달 파이프라인의 중요성에 대해 알아본다.

★ 옮긴이의 말 ★

이제 국내의 많은 곳에서도 마이크로서비스를 실제로 도입하려는 움직임이나 도입한 사례를 어렵지 않게 찾을 수 있다. 기존의 일체형 시스템 개발과 비교해보면 개념적으로는 마이크로서비스의 장점을 쉽게 이해할 수 있지만, 이를 실제로 구현해내려면 여러 가지 기술과 도구의 도움이 필요하다.
이 책은 스프링 부트와 스프링 클라우드 기술을 바탕으로 검색, 예약, 체크인, 운임 등 여러 도메인으로 구성된 항공 운항 시스템을 마이크로서비스로 구현하는 과정을 다룬다. 마이크로서비스라는 큰 주제에서 부분별로 서로 동떨어진 예제를 보여주는 것이 아니라, 일반적인 스프링 부트 웹 애플리케이션에서 시작해 스프링 클라우드 기술을 적용해가면서, 처음부터 끝까지 일관성 있게 하나의 대상 시스템을 클라우드 기반의 마이크로서비스 아키텍처로 구축해가는 전체 과정을 보여주는 것이 이 책의 가장 큰 장점이다.
새로운 서비스의 구현뿐만 아니라, 이미 일체형 아키텍처로 구현된 프로젝트를 마이크로서비스로 전환하는 과정도 상세하게 다룬다. 전환 과정에서 마주칠 난관과 해결 방법을 통해 얻을 수 있는 통찰만으로도 이 책을 사서 볼 만한 가치가 충분하다고 생각한다. 꼭 마이크로서비스가 아니더라도 분산 환경에서 발생할 수 있는 다양한 문제와 그 해법에서 많은 것을 배울 수 있다.
또한 서비스 지향 아키텍처 및 12 요소 애플리케이션과의 비교를 통한 마이크로 서비스 개념 정립, 데브옵스와의 관계, 마이크로서비스 개발에 적합한 문화와 방법론 등 이론적인 면에 있어서도 폭넓은 이야깃거리를 다루며 다양한 화두를 던진다.
마이크로서비스 역량 모델의 개념적 틀을 반복적으로 제시하면서 역량 모델의 각 요소에 대한 구체적인 내용을 전개해가는 서술 방식 덕분에 마이크로서비스의 방대한 내용을 공부할 때 중심을 잡고 길을 잃지 않도록 도와준다. 복잡다단한 다양한 서비스를 구현하는 많은 개발자들이 이 책을 통해 마이크로서비스를 익히고 실무에 점진적으로 적용해가면서 개인 역량도 up, 생산성도 up, 야근 시간은 down되기를 진심으로 바란다.
이 책은 전체적인 흐름이 매우 균형적이고 매끄럽다는 장점이 있는 반면, 부드럽게 읽히지 않는 미묘한 문장들이 상당히 많아서, 번역하는 입장에서 그런 부분을 보완하는 데 정말 많은 공을 들였다. 책의 기본 내용과 흐름이 워낙 좋아서 독자들의 만족도도 높으리라고 조심스레 예상해본다. 한걸음 더 나아가 독자들로부터 이 책을 ‘부드럽게’ 읽을 수 있었다는 평을 들을 수 있다면 번역자로서 더 바랄 것이 없을 것 같다.

목차

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)
____레거시 난관 극복
____자기 조직화 팀의 구성
____셀프 서비스 클라우드 구축
____마이크로서비스 생태계 구축
____개발 라이프사이클 프로세스로서의 데브옵스
____가치 주도 계획
____지속적 모니터링과 피드백
__개발 사이클 자동화
____개발
____통합
____테스트
____배포
____모니터링과 피드백
____설정 관리
____마이크로서비스 개발 통제, 참조 아키텍처, 라이브러리
__정리

교환 및 환불안내

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