1. 광고배너
  2. 광고배너
/ 이전버튼 다음버튼
2
미리보기

엔터프라이즈 환경을 위한 마이크로서비스
저자 : 카순인드라시리,프라바스시리와데나 ㅣ 출판사 : 에이콘출판 ㅣ 역자 : 이상근

2020.03.31 ㅣ 508p ㅣ ISBN-13 : 9791161754055

정가35,000
판매가33,250(5% 할인)
적립금 1,400원 (4%)
배송일정 04월 24일 출고 가능
주문 수량 변경시 안내 배송안내
쿠폰 및 결제혜택 확인하기

크기 기타 규격
제품구성 단행본
이용약관 청약철회
국내도서 > 컴퓨터 > 인터넷 > 웹프로그래밍(웹디자...
■ 자신 있게 마이크로서비스 아키텍처를 설계하고 개발하기
■ 현대적인 메시징 기술 적용하기
■ 서비스 메시 패턴을 적용해 서비스 간 통신 문제 극복하기
■ 실전 테스트를 거친 마이크로서비스 보안 패턴을 적용해 실제 시나리오 해결하기
■ API 관리, 분산 데이터 관리, 관찰 가능성 처리하기

이 책을 통해 엔터프라이즈 애플리케이션 환경에서 마이크로서비스를 구축하는 것을 둘러싼 주요 과제와 솔루션을 이해할 수 있도록 구성했다. 이 책은 마이크로서비스 아키텍처의 원칙과 실제 시나리오에서 마이크로서비스를 사용하는 방법을 포괄적으로 설명한다
서비스 통합 및 API 관리와 함께 마이크로서비스를 사용하는 아키텍처 문제가 제시되고, 복합/통합 마이크로서비스를 사용해 ESB(Enterprise Service Bus)와 같은 중앙 집중식 통합 제품을 사용하지 않는 방법을 배운다. 각 개념은 사용 사례와 함께 설명하며, 대부분의 사용자는 비즈니스 중단을 최소화하면서 레거시 애플리케이션과 함께 마이크로서비스를 구현해야 하는 '브라운필드(brownfield)' 환경에서 구현하고 있다는 사실을 강조한다.
마이크로서비스 메시징, 서비스 개발 및 설명, 서비스 발견, 거버넌스, 데이터 관리 기술에 관한 최신 기술을 다루고 마이크로서비스 디자인 프로세스를 안내한다. 또한 핵심 대 원자, 복합 대 통합, API 대 에지(edge)로 서비스를 구성하는 것의 중요성과 이러한 조직이 중앙 ESB의 사용을 제거하고 API 게이트웨이를 통해 서비스를 노출하는 데 도움될 방법도 알려준다
펼쳐보기

[목 차]

1장. 마이크로서비스의 사례

__모노리스에서 마이크로서비스 아키텍처로
____모놀리식 애플리케이션
____SOA와 ESB
____API들
__마이크로서비스는 무엇인가?
____비즈니스 기능 지향
____자율성: 개발, 배포, 확장의 독립성
____중앙 ESB 부재: 스마트 엔드포인트와 멍청한 파이프
____실패 내결함성
____분산화된 데이터 관리
____서비스 거버넌스
____관찰 가능성
__마이크로서비스: 장점과 단점
____장점
____단점
__마이크로서비스의 적용 방법과 적용 시기
__요약


2장. 마이크로서비스 디자인

__도메인 주도 설계
____바운디드 컨텍스트
____컨텍스트 맵
____관계형 패턴
__설계 원리
____높은 응집도와 느슨한 결합
____복원력
____관찰 가능성
____자동화
__12 팩터 앱
____코드베이스
____종속성
____설정
____백엔드 서비스
____빌드, 릴리스, 실행
____프로세스
____무공유 아키텍처
____포트 바인딩
____동시성
____폐기 가능
____개발/프로덕션 환경 일치
____로그
____어드민 프로세스
____12 팩터 앱을 넘어서
__요약


3장. 서비스 간 통신

__마이크로서비스 통신의 기초
__동기식 통신
____REST
____gRPC
____GraphQL
____웹소켓
____스리프트
__비동기식 통신
____단일 수신자
____다중 수신자
__동기식 통신 대 비동기식 통신
____메시지 포맷/타입
____JSON과 XML
____프로토콜 버퍼
____에이브로
__서비스 정의 및 계약
__요약


4장. 서비스 개발

__개발자 도구와 프레임워크
____넷플릭스 OSS
____스프링 부트
____이스티오
____드롭위저드
____Vert.x
____Lagom
__스프링 부트 시작하기
____Hello World!
____스프링 부트 액추에이터
____구성 서버
____구성 소비하기
____서비스 간 통신
__gRPC 시작하기
____gRPC 서비스 구축
____gRPC 클라이언트 구축
__카프카를 이용한 이벤트 기반 마이크로서비스
____카프카 메시지 브로커 설정
____게시자(이벤트 소스) 구축하기
____소비자 구축하기(이벤트 싱크)
__GraphQL 서비스 구축
__요약


5장. 데이터 관리

__모놀리식 애플리케이션과 공유 데이터베이스
__마이크로서비스당 데이터베이스
__마이크로서비스 간 데이터 공유
____공유 테이블 제거
____공유 데이터
____데이터 조합
__마이크로서비스의 트랜잭션
____2단계 커밋을 통한 분산 트랜잭션 피하기
____로컬 트랜잭션을 사용한 이벤트 개시
____데이터베이스 로그 마이닝
____이벤트 소싱
____사가
__폴리글랏 지속성
__캐싱
__요약


6장. 마이크로서비스 거버넌스

__왜 마이크로서비스 거버넌스인가?
__마이크로서비스 거버넌스 측면
____서비스 정의
____서비스 레지스트리 및 검색
____서비스 수명 주기 관리
____서비스 품질
____서비스 관찰 가능성
__마이크로서비스 거버넌스 구현
____서비스 레지스트리 및 검색
____개발 수명 주기 관리
____API 관리/API 게이트웨이
____관찰 가능성
__서비스 레지스트리 및 검색
____컨설
____유레카
____etcd
____쿠버네티스를 통한 서비스 검색
__요약


7장. 마이크로서비스 통합

__마이크로서비스를 통합해야 하는 이유
__스마트 엔드포인트와 멍청한 파이프
__마이크로서비스 통합의 안티 패턴
____마이크로서비스 통합을 위한 모놀리식 API 게이트웨이
____ESB와 마이크로서비스 통합
____모든 마이크로서비스 구축에 동종 기술 사용
__마이크로서비스 구성하기
____핵심 서비스
____통합 서비스
____API 서비스
__마이크로서비스 통합 패턴
____능동형 조합 또는 오케스트레이션
____반응성 조합 또는 코레오그래피
____능동형 조합과 반응형 조합의 하이브리드
____손상 방지 계층
____스트랭글러 파사드
__통합 서비스의 주요 요구 사항
____네트워크 통신 추상화
____복원력 패턴
____능동형 또는 반응형 조합
____데이터 형식
____컨테이너 네이티브 및 데브옵스 지원
____통합 서비스 거버넌스
____상태 없음, 상태 저장, 또는 장기 실행 서비스
__통합 서비스 구축을 위한 기술
____스프링 부트
____드롭위저드
____아파치 카멜과 스프링 통합
____Vert.x
____아카
____Node, Go, 러스트, 파이썬
____발레리나
____워크플로 엔진 솔루션
__서비스 메시의 시작
__요약


8장. 마이크로서비스의 배포 및 실행

__컨테이너와 마이크로서비스
____도커 소개
____도커를 사용해 마이크로서비스 배포
____도커 컴포즈
__컨테이너 오케스트레이션
____쿠버네티스 소개
____쿠버네티스 핵심 개념
____쿠버네티스 환경에서 마이크로서비스 배포
__마이크로서비스 배포 패턴
____호스트당 다중 서비스
____호스트당 서비스
____가상 머신당 서비스
____컨테이너당 서비스
__컨테이너 네이티브 마이크로서비스 프레임워크
____Metaparticle
__지속적인 통합, 전달, 배포
____지속적인 통합
____지속적인 전달
____지속적인 배포
__요약


9장. 서비스 메시

__왜 서비스 메시인가?
__서비스 메시란 무엇인가?
____비즈니스 로직
____기본 네트워크 기능
____애플리케이션 네트워크 기능
____컨트롤 플레인
__서비스 메시의 기능
____서비스 간 통신을 위한 복원력
____서비스 검색
____라우팅
____관찰 가능성
____보안
____배포
____서비스 간 통신 프로토콜
__이스티오
____이스티오 아키텍처
____이스티오 사용
__링커디
__서비스 메시를 사용해야 할까?
____장점
____단점
__요약


10장. API, 이벤트, 스트림

__API와 API 관리
____API 게시자/API 수명 주기 관리자
____API 게이트웨이
____API 저장소/개발자 포털
____API 분석/관찰 가능성
____API QoS
____API 수익 창출
____OpenAPI를 사용한 API 정의
____API 쿼리 언어: GraphQL
____API 관리와 서비스 메시
____API 관리 구현
__이벤트
____이벤트 알림
____이벤트-전달 상태 전이
____이벤트 소싱
____명령 질의 책임 분리
__스트림
____스트림 처리
__API, 이벤트, 스트림이 포함된 마이크로서비스 아키텍처
__요약


11장. 마이크로서비스 보안의 기본 사항

__모놀리스 대 마이크로서비스
__서비스 간 통신 보호
____JSON 웹 토큰
____TLS 상호 인증
__에지 보안
____OAuth 2.0
__접근 제어
____XACML
____내장형 PDP
__보안 사이드카
__요약


12장. 마이크로서비스 보안

__OAuth 2.0으로 마이크로서비스 보안
____TLS 사용
____OAuth 2.0 인가 서버 설정
____OAuth 2.0으로 마이크로서비스 보호
__자체 포함 액세스 토큰(JWT)으로 마이크로서비스 보안
____JWT를 발행하도록 인가 서버 설정
____JWT로 마이크로서비스 보호
__마이크로서비스에 대한 접근 제어
____범위 기반 접근 제어
____역할 기반 접근 제어
__서비스 간 통신 보호
____JWT로 보호된 서비스 간 통신
____TLS 상호 인증으로 보호된 서비스 간 통신
__액추에이터 엔드포인트 보안
__요약


13장. 관찰 가능성

__관찰 가능성의 세 기둥
__스프링 클라우드를 사용한 분산 추적
____스프링 클라우드 슬루스
____스프링 부트 마이크로서비스에 스프링 클라우드 슬루스 사용
____스프링 클라우드 슬루스를 사용해 여러 마이크로서비스 간의 메시지 추적
__집킨을 통한 데이터 시각화와 상관관계
____이벤트 기반 로그 집계 아키텍처
__오픈 트레이싱 소개
____스프링 부트 마이크로서비스와 집킨을 사용한 오픈 트레이싱으로 분산 추적
____스프링 부트 마이크로서비스와 예거를 사용한 오픈 트레이싱으로 분산 추적
__프로메테우스가 포함된 메트릭
____스프링 부트 마이크로서비스 메트릭 노출하기
____프로메테우스 설정
____프로메테우스를 사용한 그래프 작성
__그라파나를 사용한 분석과 모니터링
____그라파나로 대시보드 구축
____그라파나로 경고 생성
__도커와 함께 Fluentd 로그 수집기 사용
____도커 컨테이너로 Fluentd 시작
____도커 컨테이너에서 실행되는 마이크로서비스에서 Fluentd에 로그 게시
____작동 원리
____마이크로서비스 배포에서 Fluentd 사용하기
__요약

펼쳐보기
작가의 말

마이크로서비스 아키텍처 원칙을 포괄적으로 설명하고, 실제 시나리오에서 이러한 개념을 사용하는 방법을 논의한다. 또한 특정 기술이나 프레임워크에 한정하지 않고 마이크로서비스 아키텍처의 특정 측면에 가장 적합한 광범위한 기술과 프레임워크를 다룬다.
서비스 간 통신, 중앙 집중식 엔터프라이즈 서비스 버스(Enterprise Service Bus(ESB))를 사용하지 않는 서비스 통합, 중앙 집중식 API 게이트웨이 없이 API로 마이크로서비스 노출, 마이크로서비스의 범위와 크기 결정, 마이크로서비스 보안 패턴 활용 등 엔터프라이즈 아키텍처 환경에서 마이크로서비스를 구축하는 동안에 고려해야 할 근본적인 문제를 다루는 것도 차별화된 특징이다. 이 책에서 설명하는 모든 개념은 사용 사례와 함께 설명하며 독자가 시도할 수 있는 샘플과 통합된다. 이러한 사용 사례의 대부분은 넷플릭스(Netflix)와 구글 같은 기존 마이크로서비스 구현과 샌프란시스코 베이 에어리어의 다양한 밋업과 콘퍼런스에 참여했던 경험에서 영감을 얻었다.

옮긴이의 말

2018년 말에 처음으로 마이크로서비스 아키텍처 프로젝트에 참여하게 됐을 때는 크리스 리처드슨의 저서 『마이크로서비스 패턴』을 통해 마이크로서비스 아키텍처의 개념적인 측면을 이해할 수 있었다. 그러나 마이크로서비스를 실제로 어떻게 구현할지는 흩어져 있는 여러 자료를 찾아보고 코드를 구현해보면서 조금씩 배워나갈 수밖에 없었다.
2019년 7월 무렵, 이 책의 번역을 시작한 후 전체적인 내용을 살펴봤을 때는 뒤통수를 세게 얻어맞은 느낌이 들었다. 내가 그동안 고민해왔던 내용과 앞으로 좀 더 알아보고자 했었던 내용이 이 책에 충실히 담겨 있을 뿐 아니라, 2018년 말 즈음에 이미 출간됐었다는 사실이 인상적이었기 때문이다. 개인적으로는 '프로젝트를 시작할 즈음에 이 책의 내용을 접했으면 어땠을까.'라는 아쉬움도 남았다.
책이 출간되고 나서 한참 후에야 번역을 시작한 만큼, 최대한 빠른 시간 내에 번역을 마치고 독자들이 영어의 압박에서 벗어나 이 책을 좀 더 편하게 읽을 수 있도록 하는 것이 목표였다. 비록 출간을 앞두고 냉정히 평가했을 때 그 목표가 제대로 달성되지 못한 것 같아 아쉽지만, 이 책에서 다루는 내용이 한국어판이 출간되는 시점에도 여전히 유효하다는 점에서 위안을 얻는다.
개념이나 디자인 패턴 등과 같은 고수준에서만 본다면, 마이크로서비스 아키텍처는 기존의 서비스 지향 구조 등과 크게 달라 보이지 않는다. 그러나 마이크로서비스 아키텍처를 구현하기 위해 구체적인 기술을 자세히 살펴보면 그 차이를 체감할 수 있다. 이러한 차이를 체감하고 체득하는 데는 많은 노력이 필요하지만, 이 책을 통해 그 기반을 단단히 다질 수 있을 것이다.
이 책은 마이크로서비스 아키텍처의 기본 개념을 기존의 서비스지향 구조, ESB 등과 비교해서 잘 설명하고 있다. 나아가 개념을 실제 구현에 어떻게 적용하고 어떤 오픈소스를 사용할 수 있는지도 자세히 알려준다.
마이크로서비스 아키텍처는 어렵다. 알아야 할 기술이 너무 많기 때문이다. 이 책은 국내에서 마이크로서비스 아키텍처를 구현하는 데 사용되는 거의 모든 오픈소스를 다루며, 비록 국내에서는 생소하지만 국외에서는 잘 알려진 오픈소스도 소개한다.
이 책에서 설명하는 오픈소스의 개요만 파악해도, 추후 마이크로서비스를 실무에 적용할 때 큰 도움이 될 것이다.
책을 번역하는 과정에서 깃허브에 공개된 예제가 일부 누락된 것을 발견하고, 출판사를 통해 저자들과 소통할 기회가 있었다. 비록 저자들이 너무 바쁘고 소스 코드를 찾지 못한 탓에 완벽하게 업로드해주지는 못했지만, 보완하기 위해 최대한 노력해준 저자들의 노고에 감사한다. 소스 코드가 완전하지 않은 부분에 대해서는 저자들을 대신해 양해를 구하고 싶다. 그러나 책의 내용을 끝까지 살펴보면, 저자들이 실제 개발에 도움이 되는 소스를 제공하고자 최선을 다했다는 점을 깨닫게 될 것이다.
이 책을 모두 읽고 나면, 400페이지 남짓한 원서에 많은 내용을 담아낸 저자들의 노력뿐 아니라 남다른 안목과 식견에도 감탄하게 될 것이다. 따라서 다소 힘들더라도 이 책의 모든 내용을 끝까지 한 번은 읽어볼 것을 권한다.
펼쳐보기
카순인드라시리
WSO2의 설계자, 저자, 마이크로서비스 및 통합 에반젤리스트, 통합 아키텍처 디렉터이며, 샌프란시스코 베이 에어리어(San Francisco Bay Area)에서 벤더 중립적인 마이크로서비스 모임인 '마이크로서비스, API, 통합 밋업 그룹(Microservices, APIs, and Integration meetup group)'을 설립했다. 『Beginning WSO2 ESB』(Apress, 2017)의 저자이며, 엔터프라이즈 통합 분야에서 쌓은 7년 이상의 경험을 바탕으로 소프트웨어 아키텍트 및 제품 리더로 일했다.
아파치 커미터와 PMC의 멤버로 활동 중이며 샌프란시스코, 런던, 바르셀로나에서 열린 여러 콘퍼런스에서 엔터프라이즈 통합과 마이크로서비스에 관련된 주제를 발표했다. 베이 에어리어 마이크로서비스, 컨테이너, 클라우드 네이티브 밋업에서 강연을 하고 있으며, 마이크로서비스에 대한 블로그와 논문도 게시한다. 다수의 포춘 100대 기업과 협력해 엔터프라이즈 통합 및 마이크로서비스 영역에서 솔루션을 제공한다

프라바스시리와데나
WSO2의 아이덴티티 에반젤리스트, 저자, 블로거이자 신원 관리 및 보안 담당 부사장이며, 다수의 포춘 100/500대 기업을 포함해 글로벌 기업을 위한 중요한 IAM(Identity and Access Management) 인프라 설계 및 구축 분야에서 11년 이상 경험을 쌓았다. 기술 에반젤리스트로서 다섯 권의 책을 출간했으며 블록체인, PSD2, GDPR, IAM에서 마이크로서비스 보안까지 다양한 주제를 다루는 블로그와 유튜브 채널을 운영한다.
RSA Conference, Identiverse, European Identity Conference, Consumer Identity World USA, API World, API Strategy & Practice Con, QCon, OSCON, WSO2Con 등과 같은 많은 콘퍼런스에서 연설했으며, IAM 커뮤니티에 '복음'을 전하는 워크샵/미팅을 진행하며 전 세계를 여행했다. 샌프란시스코 베이 에어리어에서 가장 큰 IAM 모임인 실리콘밸리 IAM 사용자 그룹(Silicon Valley IAM User Group)을 창립했다


옮긴이 이상근
숭실대학교에서 컴퓨터학을 전공하고, 동 대학원에서 공학박사 학위를 받았다. 세부전공은 분산 처리이며, 주로 분산 컴퓨팅 아키텍처와 워크플로 엔진을 연구했다. 학업을 마친 후 개발자로 일하면서 10년 이상의 다양한 경력을 쌓았고 엔터프라이즈 잡스케줄러, 렌더팜 관리 시스템, 클라우드 데이터베이스 프로비저닝 서비스, 빅데이터 관련 시스템, 클라이언트 사이드 로드 밸런싱 등과 같은 다양한 개발 분야를 두루 경험했다. 최근에는 마이크로서비스 아키텍처와 서비스 메시가 가져올 IT 시스템의 큰 변화에 주목하고 있으며, 현재 애플리케이션 아키텍트로 일하고 있다
펼쳐보기

독자서평 쓰기 로그인을 하시면 독자서평을 쓰실 수 있습니다.

독자서평 쓰기 로그인을 하시면 독자서평을 쓰실 수 있습니다.
도서평점
내용
등록하기
0/2000자
교환/반품 방법
  • 마이페이지 > 주문관리 > 주문/배송조회 > 주문조회 후  [1:1상담신청]  또는 고객센터 (1544-9020)
  • ※ 오픈마켓, 해외배송 주문상품 문의 시 [1:1상담신청] 또는 고객센터 (1544-9020)
교환/반품 가능기간
  • 변심반품의 경우 수령 후 7일 이내
  • 상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
교환/반품 비용
  • 단순변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
  • 해외직배송 도서 구매 후 단순변심에 의한 취소 및 반품 시 도서판매가의 20% 수수료 부과
교환/반품 불가사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우 예) 만화, 잡지, 수험서 및 문제집류
  • 복제가 가능한 상품 등의 포장을 훼손한 경우 예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
상품 품절
  • 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는 이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁 해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함

이 분야의 베스트

더보기 >

    이 분야의 신간

    더보기 >
      맨위로가기

      영풍문고 로고

      • 회사명 : (주)영풍문고
      • 대표이사 : 김경환
      • 소재지 : 서울특별시 종로구 청계천로 41 (우)03188
      • 사업자 등록번호 : 773-86-01800 ㅣ 통신판매업 신고번호 : 2023-서울종로-0130 [ 사업자정보확인 ]
      • 개인정보관리 책임자 : 조순제 ㅣ customer@ypbooks.co.kr ㅣ 대량주문 : webmaster@ypbooks.co.kr
      COPYRIGHT © YOUNGPOONG BOOKSTORE INC. ALL RIGHTS RESERVED.
      영풍문고 네이버블로그 영풍문고 인스타그램
      맨위로가기