이벤트 기반 마이크로서비스 구축 : 대규모 조직 데이터를 활용하는 기법
Description
실시간 데이터 활용을 위한 새로운 시스템 아키텍처 가이드
이벤트 기반 마이크로서비스 아키텍처를 소개하는 실무 개론서다. 구조, 통신, 통합, 배포 등 기본 개념을 그림과 함께 구체적으로 설명한다. 따라서 이벤트 기반 시스템 구축 방식을 마이크로서비스로 전환하고자 하는 입문 개발자도 쉽게 읽을 수 있다. 넷플릭스, 링크드인, 스포티파이, 우버 등 세계 IT 기업들이 도입한 실제 데이터 사용법과 서비스 접근법을 익혀보자.

저자

애덤벨메어

저자:애덤벨메어
2020년부터쇼피파이(Shopify)데이터플랫폼팀에합류한선임엔지니어.2020년전에는플립(Flipp)과블랙베리(BlackBerry)에서소프트웨어개발자로근무하며이벤트기반시스템에처음눈을뜨게됐다.
데브옵스(카프카,스파크,메소스,쿠버네티스,솔라,일래스틱서치,HBase,주키퍼클러스터,프로그램식구축/확장/모니터링)분야의전문가로서기술리더십(회사가데이터통신레이어를구축하고,기존시스템과연계하고,새로운시스템을개발하고,제품을전달하는일에집중하도록지원),소프트웨어개발(빔,스파크,카프카스트림즈라이브러리를이용하여자바/스칼라언어로이벤트기반마이크로서비스구축),데이터엔지니어링(사용자기기에서행동기반데이터를수집하여조직내부에공유)분야에많은노하우를갖고있다.

역자:이일웅
현재국내통신사의차세대프로젝트에서카프카담당소프트웨어아키텍트로일한다.2~3년전부터이벤트기반의마이크로서비스아키텍처설계에많은관심을갖게되었으며,카프카기술에도관심이많아콘플루언트인증아파치카프카개발자/관리자(CCDAK,CCAAK)자격을취득했다.십수년간다양한엔터프라이즈프로젝트현장을누벼왔고이제는어느덧중년아재가되었지만,아직도코드와씨름하며열정적인기술자로서활동중인두딸의아빠다.

목차

CHAPTER1왜이벤트기반마이크로서비스인가?
__1.1이벤트기반마이크로서비스란?
__1.2도메인주도설계와경계콘텍스트
__1.3통신구조
__1.4기존컴퓨팅의통신구조
__1.5이벤트기반통신구조
__1.6비동기식이벤트기반마이크로서비스
__1.7동기식마이크로서비스
__1.8마치며

CHAPTER2이벤트기반마이크로서비스기초
__2.1토폴로지구성
__2.2이벤트콘텐츠
__2.3이벤트구조
__2.4엔티티이벤트에서상태를구체화
__2.5이벤트데이터정의와스키마
__2.6마이크로서비스단일작성자원칙
__2.7마이크로서비스를이벤트브로커로강화
__2.8이벤트브로커대메시지브로커
__2.9대규모마이크로서비스관리
__2.10마이크로서비스세금납부
__2.11마치며

CHAPTER3통신및데이터규약
__3.1이벤트기반데이터규약
__3.2이벤트포맷선택
__3.3이벤트설계
__3.4마치며

CHAPTER4기존시스템에이벤트기반아키텍처통합
__4.1데이터해방이란?
__4.2데이터해방패턴
__4.3데이터해방프레임워크
__4.4쿼리로데이터해방
__4.5CDC로그로데이터해방
__4.6아웃박스테이블로데이터해방
__4.7데이터정의변경을캡처대상데이터세트로
__4.8이벤트데이터를데이터저장소에싱킹
__4.9싱킹과소싱의비즈니스영향도
__4.10마치며

CHAPTER5이벤트기반처리기본
__5.1상태비저장토폴로지구성
__5.2이벤트스트림리파티션
__5.3이벤트스트림코파티션
__5.4컨슈머인스턴스에파티션할당
__5.5상태비저장처리인스턴스실패복구
__5.6마치며

CHAPTER6확정적스트림처리
__6.1이벤트기반워크플로의확정성
__6.2타임스탬프
__6.3이벤트스케줄링과확정적처리
__6.4워터마크
__6.5스트림시간
__6.6비순차이벤트와지각이벤트
__6.7지각이벤트처리
__6.8재처리대준실시간처리
__6.9간헐적실패와지각이벤트
__6.10프로듀서/이벤트브로커연결문제
__6.11마치며(더읽을거리)

CHAPTER7상태저장스트리밍
__7.1상태저장소,이벤트스트림에서상태구체화
__7.2체인지로그이벤트스트림에상태기록
__7.3내부상태저장소에상태구체화
__7.4외부상태저장소에상태구체화
__7.5재구성대상태저장소마이그레이션
__7.6트랜잭션과실제로한번처리
__7.7마치며

CHAPTER8마이크로서비스워크플로구축
__8.1코레오그래피패턴
__8.2오케스트레이션패턴
__8.3분산트랜잭션
__8.4보상워크플로
__8.5마치며

CHAPTER9FaaS응용마이크로서비스
__9.1함수기반솔루션을마이크로서비스로설계
__9.2FaaS공급자선택
__9.3함수를마이크로서비스로개발
__9.4콜드스타트,웜스타트
__9.5트리거로함수시동
__9.6비즈니스업무를함수로처리
__9.7상태관리
__9.8함수에서다른함수호출
__9.9종료및중단
__9.10함수튜닝
__9.11FaaS솔루션확장
__9.12마치며

CHAPTER10기본프로듀서/컨슈머마이크로서비스
__10.1BPC의알맞은용도는?
__10.2하이브리드BPC애플리케이션으로외부스트리밍을처리
__10.3마치며

CHAPTER11대용량프레임워크마이크로서비스
__11.1대용량프레임워크의간략한역사
__11.2대용량프레임워크의내부작동원리
__11.3장점및제약
__11.4클러스터구성옵션과실행모드
__11.5애플리케이션제출모드
__11.6상태처리와체크포인트활용
__11.7애플리케이션확장과이벤트스트림파티션처리
__11.8실패복구
__11.9멀티테넌시이슈
__11.10언어및구문
__11.11프레임워크선택
__11.12예제:클릭및뷰의세션윈도잉
__11.13마치며

CHAPTER12경량프레임워크마이크로서비스
__12.1장점및제약
__12.2경량처리
__12.3상태처리와체인지로그활용
__12.4애플리케이션확장과실패복구
__12.5경량프레임워크선택
__12.6언어및구문
__12.7스트림-테이블-테이블조인:강화패턴
__12.8마치며

CHAPTER13이벤트기반마이크로서비스와요청-응답마이크로서비스의통합
__13.1외부이벤트처리
__13.2자율적으로생성된분석이벤트처리
__13.3서드파티요청-응답API연계
__13.4상태저장데이터처리및서비스
__13.5이벤트기반워크플로내에서요청처리
__13.6요청-응답애플리케이션과마이크로프런트엔드
__13.7마이크로프런트엔드의장점
__13.8마이크로프런트엔드의단점
__13.9마치며

CHAPTER14지원도구
__14.1마이크로서비스-팀배정시스템
__14.2이벤트스트림생성/변경
__14.3이벤트스트림메타데이터태깅
__14.4쿼터
__14.5스키마레지스트리
__14.6스키마생성/변경알림
__14.7오프셋관리
__14.8이벤트스트림권한과ACL
__14.9상태관리와애플리케이션리셋
__14.10컨슈머오프셋랙모니터링
__14.11마이크로서비스생성프로세스간소화
__14.12컨테이너관리서비스
__14.13클러스터생성과관리
__14.14디펜던시추적과토폴로지시각화
__14.15마치며

CHAPTER15이벤트기반마이크로서비스테스트
__15.1일반테스트원칙
__15.2단위테스트토폴로지함수
__15.3토폴로지테스트
__15.4스키마진화와호환성테스트
__15.5이벤트기반마이크로서비스의통합테스트
__15.6로컬통합테스트
__15.7완전원격통합테스트
__15.8완전원격통합테스트전략선택
__15.9마치며

CHAPTER16이벤트기반마이크로서비스배포
__16.1마이크로서비스배포원칙
__16.2마이크로서비스배포아키텍처컴포넌트
__16.3기본풀-스톱배포패턴
__16.4롤링업데이트패턴
__16.5중대한스키마변경패턴
__16.6블루-그린배포패턴
__16.7마치며

CHAPTER17총정리
__17.1통신레이어
__17.2비즈니스도메인과경계콘텍스트
__17.3공용도구와인프라
__17.4스키마화이벤트
__17.5데이터해방,단일진실공급원
__17.6마이크로서비스
__17.7마이크로서비스구현옵션
__17.8테스트
__17.9배포

맺음말

출판사 서평

이벤트기반마이크로서비스를실무에도입하려는입문자를위한실용적인가이드북

오늘날조직은다양한요구사항과계속증가하는데이터로인해어려움을겪는다.특히,실시간데이터활용에대한수요가증가하고있어,새로운시스템아키텍처도입이절실하게요구된다.이책은대규모조직데이터를처리하기위해이벤트기반마이크로서비스로전환하려는실무입문자를위한실용적인가이드북이다.이벤트기반마이크로서비스구축방법,적합한애플리케이션패턴,도입시필요한구성요소와도구,일반마이크로서비스와의차이점등을친절하게안내하고본인의환경에맞는비즈니스기능에집중할수있는토대를갖추도록돕는다.대용량데이터를다루는환경에서기존의데이터베이스로데이터를처리하려면,여러가지어려움과한계점에맞딱뜨리기쉽다.이책에서소개하는알짜배기정보를활용하면이벤트기반시스템의여러문제를연구하고해결할수있다.

● 통신레이어
● 비즈니스도메인과경계콘텍스트
● 공용도구와인프라
● 스키마화이벤트
● 데이터해방,단일진실공급원
● 마이크로서비스구현옵션
● 테스트
● 배포