스프링 5.0 마이크로서비스 (스프링 부트와 스프링 클라우드, 스프링 리액티브로 배우는 | 2 판)

스프링 5.0 마이크로서비스 (스프링 부트와 스프링 클라우드, 스프링 리액티브로 배우는 | 2 판)

$36.22
Description
마이크로서비스 아키텍처 개념을 먼저 알아보고 일반적인 스프링 부트 웹 애플리케이션을 스프링 클라우드, 스프링 리액티브 기술을 활용해서 마이크로서비스로 만들어가는 과정을 풍부한 예제와 실행 화면을 통해 구체적으로 보여준다. 마이크로서비스 적용 시 신경 써야 할 로깅과 모니터링도 빠짐없이 다루고 있고, 도커 컨테이너 기술을 활용해서 마이크로서비스와 데브옵스를 잘 조합하는 방법도 알아볼 수 있다. 이 책은 새롭게 마이크로서비스를 구축하거나 기존의 일체형 애플리케이션을 마이크로서비스로 전환할 때 훌륭한 지침서가 될 것이다.
저자

라제시RV

저자라제시RV는다양한기술에대해폭넓은경험을가진IT아키텍트로,16년이상항공IT분야에서일해왔다.
인도의코친(Cochin)대학에서컴퓨터엔지니어링학위를받았고,EJB초창기에JEE커뮤니티스프링에참여했다.아키텍트로서차세대항공여행객예약시스템(iFlyRes),차세대항공화물예약시스템(SkychainandCROAMIS)같은다수의대규모,미션크리티컬프로젝트를수행했다.
현재에미레이트항공에서수석아키텍트로일하고있으며,JEE,SOA,NoSQL,IoT,모바일,UI,통합등다양한분야의솔루션아키텍처를다루고있다.아키텍처를수립한OpenTravelPlatform(OTP)은2011년비용절감분야에서레드햇(RedHat)혁신상을수상했다.2011년에는레거시메인프레임시스템을전환하는데사용되는육각형아키텍처패턴을바탕으로하는벌집아키텍처를소개하기도했다.
기술과아키텍처에대해뜨거운열정이있으며,BEA인증WebLogicAdministrator,Sun인증JavaEnerpriseArchitect,OpenGroup인증TOGAFPractitioner,SOA분야의ZapThink면허보유자,IASA글로벌CITA-A인증아키텍처스페셜리스트이기도하다.
『스프링마이크로서비스』(에이콘,2017)를저술했으며『Service-OrientedJavaBusinessIntegration』(Packt,2008)을감수했다.

목차

1장.쉽게알아보는마이크로서비스
__마이크로서비스로의진화
____마이크로서비스로진화의촉매:비즈니스적요구
____마이크로서비스로진화의촉매:기술
____명령형아키텍처의진화
__마이크로서비스란무엇인가?
__마이크로서비스와벌집
__마이크로서비스의원칙
____서비스하나에책임도하나
____마이크로서비스는자율적
__마이크로서비스의특징
____서비스는일급시민
____마이크로서비스는가볍다
____다양한언어로구성할수있는마이크로서비스
____마이크로서비스환경에서의자동화
____마이크로서비스를지원하는생태계
____동적이고분산돼있는마이크로서비스
____붕괴저항성,빨리실패하기,자체치유
__마이크로서비스예제
____휴일정보포털의예
____여행사포털사례
__마이크로서비스의장점
____폴리글랏아키텍처지원
____실험과혁신유도
____탄력적이고선택적인확장
____대체가능성
____유기적시스템구축유도
____기술적부채경감
____다양한버전의공존
____자기조직화시스템구축지원
____이벤트주도아키텍처지원
____데브옵스지원
__정리

2장.마이크로서비스관련아키텍처스타일및사례
__서비스지향아키텍처(SOA)
____서비스지향통합
____기존시스템의현행화
____서비스지향애플리케이션
____SOA를사용한일체형의전환
__12요소애플리케이션과의관계
____단일코드베이스
____의존성꾸러미
____환경설정외부화
____후방지원서비스접근성
____빌드,출시,운영의격리
____무상태,비공유프로세스
____서비스를포트에바인딩해서노출
____확장을위한동시성
____폐기영향최소화
____개발과운영의짝맞춤
____로그외부화
____관리자프로세스패키징
__서버리스컴퓨팅
__람다아키텍처
__삼총사의만남:데브옵스,클라우드,마이크로서비스
____마이크로서비스실천방식과프로세스로서의데브옵스
____마이크로서비스를위한셀프서비스인프라스트럭처로서의클라우드
__리액티브마이크로서비스
____리액티브마이크로서비스기반주문관리시스템
__마이크로서비스사용사례
__마이크로서비스를일찍도입한조직:공통점탐구
____공통적인주제는일체형의전환
__마이크로서비스프레임워크
__정리

3장.스프링부트로만드는마이크로서비스
__개발환경구축
__스프링부트RESTful마이크서비스만들기
__스프링부트시작
__스프링부트마이크서비스개발
__첫번째스프링부트마이크로서비스개발
____스프링부트마이크로서비스테스트
__스프링부트마이크로서비스에HATEOAS기능추가
__리액티브스프링부트마이크로서비스
__스프링웹플럭스를활용한리액티브마이크로서비스
____스프링부트와래빗엠큐를사용하는리액티브마이크로서비스
__보안구현
____마이크로서비스에기본보안적용
____OAuth2를사용하는마이크서비스보안
__다른도메인에존재하는정보요청활성화
__스프링부트액추에이터
____JConsole을활용한모니터링
____SSH를활용한모니터링
____사용자정의서버진단모듈추가
____사용자정의지표
__마이크로서비스문서화
__고객등록마이크로서비스예제
__정리

4장.마이크로서비스개념적용
__마이크로서비스설계가이드라인
____마이크로서비스경계설정
____통신방식설계
____마이크로서비스오케스트레이션
____마이크로서비스하나에얼마나많은종단점을둘것인가?
____가상머신하나당하나의마이크로서비스또는다수의마이크로서비스?
____룰엔진:공유또는내장?
____BPM의역할과작업흐름
____마이크로서비스가데이터스토어를공유할수있는가?
____마이크로서비스는화면이꼭필요한가?
____트랜잭션경계설정
____서비스종단점설계고려사항
____공유라이브러리처리
____마이크로서비스에서의사용자인터페이스
____마이크로서비스의게이트웨이API
____ESBiPass및와마이크로서비스의사용
____서비스버저닝고려사항
____크로스오리진설계
____공유참조데이터처리
____마이크로서비스와대규모데이터작업
__정리

5장.마이크로서비스역량모델
__마이크로서비스역량모델
__핵심역량
____서비스리스너와라이브러리
____저장기능
____서비스구현
____서비스종단점
__인프라스트럭처역량
____클라우드
____컨테이터런타임
____컨테이너오케스트레이션
__지원역량
____서비스게이트웨이
____소프트웨어정의로드밸런서
____중앙집중형로그관리
____서비스탐색
____보안서비스
____서비스환경설정
____운영모니터링
____의존관계관리
____데이터호수
____신뢰성메시징
__프로세스및통제역량
____데브옵스
____자동화도구
____컨테이너레지스트리
____마이크로서비스문서화
____참조아키텍처및라이브러리
__마이크로서비스성숙도모델
____레벨0:전통방식
____레벨1:초급
____레벨2:중급
____레벨3:고급
__마이크로서비스도입을위한진입점
__정리

6장.마이크로서비스의진화:사례연구
__PSS애플리케이션의이해
____비즈니스절차적관점
____기능적관점
____아키텍처관점
____설계관점
____구현관점
____배포관점
__일체형의죽음
__문제점
__간극메우기중단
__회고
__마이크로서비스구조대:계획적마이그레이션
____비즈니스사례
____마이그레이션방식
____마이크로서비스경계식별
____의존관계분석
____마이그레이션을위한마이크로서비스우선순위지정
____마이그레이션중의데이터동기화
____참조데이터관리
____사용자인터페이스와웹애플리케이션
____테스트전략
____생태계역량구축
____모듈마이그레이션은필요할때만
____마이크로서비스의내부계층구조
____마이크로서비스오케스트레이션
____다른시스템과의통합
____공유라이브러리관리
____예외처리
__구현목표
____프로젝트구현
____프로젝트실행및테스트
__심화학습
__정리

7장.스프링클라우드컴포넌트를활용한마이크로서비스확장
__스프링클라우드란?
__스프링클라우드출시버전
__브라운필드PSS시스템개발환경설정
____스프링클라우드컨피그컨피그서버로마이크로서비스구축
____컨피그서버설정
____컨피서버URL의이해
____환경설정정보변경전파및반영
____환경설정변경을전파하는스프링클라우드버스
____컨피그서버에고가용성적용
____컨피그서버상태모니터링
____컨피그서버환경설정파일
____컨피그서버를사용하는환경설정외부화완성
__유레카를이용한서비스등록및탐색
____동적서비스등록및발견의이해
____유레카의이해
____유레카서버구성
____고가용성유레카서버
__주울프록시API게이트웨이
____주울설정
____고가용성주울
__리액티브마이브로서비스를위한스트림
__스프링클라우드시큐리티를활용한마이크로서비스보호
__브라운필드PSS시스템아키텍처정리
__정리

8장.마이크로서비스로깅및모니터링
__로그관리와관련한난제
__중앙집중형로깅
__로깅솔루션
____클라우드서비스
____내장가능한로깅솔루션
____최상의조합
____사용자정의로깅구현
____스프링클라우드슬루스로분산로그추적
__마이크로서비스모니터링
____모니터링도전과제
____모니터링도구
____마이크로서비스의존관계모니터링
____장애를견딜수있는마이크로서비스를위한스프링클라우드히스트릭스
____터바인을통한히스트릭스스트림통합
__데이터호수를사용한데이터분석
__정리

9장.도커컨테이너와마이크로서비스
__지금까지만든브라운필드PSS마이크로서비스의한계
__컨테이너란무엇인가?
__가상머신과컨테이너의차이
__컨테이너의장점
__마이크로서비스와컨테이너
__도커소개
____도커핵심컴포넌트
__마이크로서비스를도커에배포
__도커에서래빗엠큐실행
__도커레지스트리사용
____도커허브구성
____도커허브에마이크로서비스퍼블리싱
__클라우드에서의마이크로서비스
____AWSEC2에도커설치
__EC2에서브라운필드서비스실행
__컨테이너화의미래
__정리

10장.메소스와마라톤을이용한도커화된마이크로서비스확장
__마이크로서비스확장
____자동확장이해
____잃어버린조각
__컨테이너오케스트레이션
____컨테이너오케스트레이션도구의중요성
____컨테이너오케스트레이션도구가하는일
____마이크로서비스와의관계
____가상화와의관계
____컨테이너오케스트레이션솔루션
__메소스와마라톤을이용한컨테이너오케스트레이션
__메소스자세히알아보기
__DCOS로메소스마라톤구현
__브라운필드마이크로서비스에메소스와마라톤적용
____메소스,마라톤과관련컴포넌트설치
____메소스와마라톤실행
__브라운필드PSS서비스준비
____브라운필드PSS서비스배포
__정리

11장.마이크로서비스개발라이프사이클
__마이크로서비스개발을위한사례
____비즈니스동기및가치에대한이해
____프로젝트에서제품개발로의사고방식전환
____개발철학의선택
____실행가능한최소한의제품개념활용(MVP)
____레거시난관극복
____자기조직화팀의구성
____셀프서비스클라우드구축
____마이크로서비스생태계구축
____개발라이프사이클프로세스로서의데브옵스
__

출판사 서평

★이책에서다루는내용★

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

★이책의대상독자★

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

★이책의구성★

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

★옮긴이의말★

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