콘텐츠 바로가기
본문 바로가기

YES24 카테고리 리스트

YES24 유틸메뉴

Global YES24안내보기

Global YES24는?

K-POP/K-Drama 관련상품(음반,도서,DVD)을
영문/중문 으로 이용하실 수 있습니다.

Korean wave shopping mall, sell the
K-POP/K-Drama (CD,DVD,Blu-ray,Book) We aceept PayPal/UnionPay/Alipay
and support English/Chinese Language service

English

作为出售正规 K-POP/K-Drama 相关(CD,图书,DVD) 韩流商品的网站, 支持 中文/英文 等海外结账方式

中文

검색


어깨배너

2월 혜택 모음
1/6

빠른분야찾기



신용카드 (54x86mm)
신용카드 (54x86mm)
A4용지 (210x297mm)
A4용지 (210x297mm)
dummy
스프링으로 하는 마이크로서비스 구축
미리보기 사이즈비교 공유하기
소득공제

스프링으로 하는 마이크로서비스 구축

스프링 부트와 스프링 클라우드를 이용한 도커/쿠버네티스 마이크로서비스

매그너스 라슨 저/박규태 | 에이콘출판사 | 2020년 11월 30일 | 원서 : Hands-On Microservices with Spring Boot and Spring Cloud: Build and deploy Java microservices using Spring Cloud, Istio, and Kubernetes 첫번째 구매리뷰를 남겨주세요. | 판매지수 1,746 판매지수란?
상품 가격정보
정가 40,000원
판매가 36,000 (10% 할인)
YES포인트
배송안내
배송안내 바로가기

구매 시 참고사항
구매 시 참고사항

판매중

수량
  • 국내배송만 가능
  • 최저가 보상
  • 문화비소득공제 신청가능
1/4
광고 AD

스프링으로 하는 마이크로서비스 구축

품목정보

품목정보
발행일 2020년 11월 30일
쪽수, 무게, 크기 768쪽 | 188*235*37mm
ISBN13 9791161754673
ISBN10 1161754679

관련분류

이 상품의 이벤트 (8개)

책소개

  •  책의 일부 내용을 미리 읽어보실 수 있습니다. 미리보기

목차

저자 소개 (2명)

30년 이상 IT 산업에 종사했으며, 볼보(Volvo)와 에릭슨(Ericsson), 아스트라제네카(AstraZeneca)등 스웨덴 대기업의 컨설턴트로 일하고 있다. 수년에 걸쳐 RPC, CORBA, SOAP, REST 등 다양한 통신 기술이 명멸해 가는 것을 지켜봤다. 예전에 실질적인 도움을 줄 수 있는 쓸 만한 소프트웨어의 부재로 분산 시스템과 관련된 문제에 어려움을 겪었다. 그러나 지난 몇 년 동안 스프링 클... 30년 이상 IT 산업에 종사했으며, 볼보(Volvo)와 에릭슨(Ericsson), 아스트라제네카(AstraZeneca)등 스웨덴 대기업의 컨설턴트로 일하고 있다. 수년에 걸쳐 RPC, CORBA, SOAP, REST 등 다양한 통신 기술이 명멸해 가는 것을 지켜봤다. 예전에 실질적인 도움을 줄 수 있는 쓸 만한 소프트웨어의 부재로 분산 시스템과 관련된 문제에 어려움을 겪었다. 그러나 지난 몇 년 동안 스프링 클라우드, 넷플릭스 OSS, 도커, 쿠버네티스 등의 오픈 소스 프로젝트가 등장하면서 상황이 크게 바뀌었다. 지난 5년 동안 고객이 새로운 소프트웨어 기술을 사용하도록 도왔으며, 해당 주제로 여러 번 발표를 하고 블로그에 게시했다.
엔터프라이즈 자바 환경에서 오랫동안 일했다. 콘텐츠 관리 시스템, 웹 오피스, 스마트 TV용 앱, 소셜 미디어 플랫폼을 개발했으며, 최근 몇 년간은 클라우드 솔루션과 GPU 관리 플랫폼을 개발 중이다. 많은 부분을 코드로 자동화할 수 있어서 클라우드 환경을 무척 좋아한다. 자바월드(javaworld.co.kr)라는 블로그를 운영 중이다. 엔터프라이즈 자바 환경에서 오랫동안 일했다. 콘텐츠 관리 시스템, 웹 오피스, 스마트 TV용 앱, 소셜 미디어 플랫폼을 개발했으며, 최근 몇 년간은 클라우드 솔루션과 GPU 관리 플랫폼을 개발 중이다. 많은 부분을 코드로 자동화할 수 있어서 클라우드 환경을 무척 좋아한다. 자바월드(javaworld.co.kr)라는 블로그를 운영 중이다.

만든 이 코멘트

저자, 역자, 편집자를 위한 공간입니다. 독자들에게 전하고 싶은 말씀을 남겨주세요. 코멘트 쓰기
접수된 글은 확인을 거쳐 이 곳에 게재됩니다.
독자 분들의 리뷰는 리뷰 쓰기를, 책에 대한 문의는 1:1 문의를 이용해 주세요.

출판사 리뷰

이 책에서 다루는 내용

ㆍ 스프링 부트를 사용한 리액티브 마이크로서비스 구축
ㆍ 스프링 클라우드를 사용해 탄력성 및 확장성 있는 마이크로서비스 개발
ㆍ 스프링 시큐리티 및 OAuth 2.0/OIDC를 사용해 공개 API 보호
ㆍ 도커를 사용해 개발, 테스트 환경과 상용 환경 사이의 격차 해소
ㆍ 쿠버네티스를 사용한 마이크로서비스 배포 및 관리
ㆍ 이스티오를 사용한 보안성, 관찰 가능성, 트래픽 관리 편의성 향상

이 책의 대상 독자

쿠버네티스를 컨테이너 오케스트레이터로 사용하고 이스티오를 서비스 메시로 사용해 기존 일체형 애플리케이션을 마이크로서비스로 분할하고 온프레미스나 클라우드로 배포하는 방법을 배우려는 자바, 스프링 개발자와 아키텍트를 위한 책이다. 마이크로서비스 아키텍처에 익숙하지 않더라도 문제 없이 읽을 수 있다.

이 책의 구성

1장, ‘마이크로서비스 소개’에서는 기본 전제인 마이크로서비스의 필수 개념과 디자인 패턴을 설명한다.

2장, ‘스프링 부트 소개’에서는 스프링 부트와 책의 앞 부분에서 사용할 오픈 소스 프로젝트를 소개한다. RESTful API 개발에 사용하는 스프링 웹플럭스(Spring WebFlux), 스웨거(Swagger)/OpenAPI 기반 API 문서를 생성하는 스프링 폭스(SpringFox), SQL 및 NoSQL 데이터베이스에 데이터를 저장할 때 사용하는 스프링 데이터(Spring Data), 메시지 기반의 마이크로서비스에서 사용하는 스프링 클라우드 스트림(Spring Cloud Stream), 마이크로서비스를 컨테이너로 실행하는 도커 등을 소개한다.

3장, ‘공조 마이크로서비스 집합 생성’에서는 공조 마이크로서비스 집합을 생성하는 방법을 설명한다. 스프링 이니셜라이저(Spring Initializr)를 사용해 스프링 프레임워크 5.1(Spring Framework 5.1) 및 스프링 부트 2.1(Spring Boot 2.1) 기반의 골격 프로젝트를 생성하고, 세 가지 핵심 서비스를 만든다. 또한 세 가지 핵심 서비스에서 얻은 정보를 집계해 복합적 결과를 만드는 복합 서비스도 만든다. 3장의 뒷부분에선 스프링 웹플럭스를 기반으로 기본적인 RESTful API를 추가하는 방법을 배우며, 4장에선 더 많은 기능을 마이크로서비스에 추가한다.

4장, ‘도커를 사용한 마이크로서비스 배포’에서는 도커를 사용해 마이크로서비스를 배포하는 방법을 설명한다. 도커파일(Dockerfile)이나 도커 컴포즈(Docker Compose) 파일을 이용해 전체 마이크로서비스 환경을 하나의 커맨드로 시작하는 방법을 배우고, 여러 스프링 프로필을 사용해 도커용 구성과 이외의 구성을 분리해서 처리하는 방법도 배운다.

5장, ‘OpenAPI/스웨거를 사용한 API 문서화’에서는 마이크로서비스에서 공개하는 API를 OpenAPI/스웨거를 사용해 빠르게 문서화하는 방법을 배운다. 스프링 폭스는 서비스 코드에 붙인 애노테이션(annotation)을 검사해 OpenAPI 및 스웨거 기반의 API 문서를 생성한다. 또한 스프링 폭스 스웨거 UI를 사용하면 API를 웹 브라우저에서 테스트할 수 있다.

6장, ‘영속성 추가’에서는 마이크로서비스 데이터에 영속성을 부여하는 방법을 배운다. 스프링 데이터를 사용해 2개의 핵심 마이크로서비스는 문서 데이터베이스인 MongoDB에 데이터를 저장 및 접근하게 하며, 나머지 마이크로서비스는 JPA(Java Persistence API)를 사용해 관계형 데이터베이스인 MySQL의 데이터에 접근하게 한다.

7장, ‘리액티브 마이크로서비스 개발’에서는 리액티브 방식을 사용해야 하는 이유와 사용 시기, 엔드투엔드(end-to-end) 리액티브 서비스를 개발하는 방법을 배운다. 논블로킹(non-blocking) 동기 방식의 RESTful API와 이벤트 기반 비동기 방식의 서비스를 개발하고 테스트하는 방법도 배운다. 또한 MongoDB를 위해 논블로킹 방식의 영속성 계층을 사용하는 방법과 MySQL을 위해 일반적인 블로킹 코드를 사용하는 방법을 배운다.

8장, ‘스프링 클라우드 소개’에서는 이 책에서 사용하는 스프링 클라우드 및 스프링 클라우드 컴포넌트를 소개한다.

9장, ‘넷플릭스 유레카와 리본을 사용한 서비스 검색’에서는 스프링 클라우드의 넷플릭스 유레카(Netflix Eureka)와 리본(Ribbon)을 사용해 서비스 검색 기능을 추가하는 방법을 알아본다. 즉 넷플릭스 유레카 기반의 서비스 검색 서버를 시스템 환경에 추가하고, 넷플릭스 리본을 사용해 다른 마이크로서비스를 찾도록 마이크로서비스를 구성한다. 또한 자동으로 마이크로서비스를 등록하는 방법과 넷플릭스 리본을 통해 전달된 트래픽을 활성화된 새 인스턴스로 자동로드 밸런싱하는 방법을 이해한다.

10장, ‘스프링 클라우드 게이트웨이를 에지 서버로 사용’에서는 스프링 클라우드 게이트웨이(Spring Cloud Gateway)를 사용해 마이크로서비스를 에지(edge) 서버 뒤로 숨기고, 선택된 일부 API만 외부 소비자에게 공개하는 방법을 배운다. 또한 외부 소비자가 볼 수 없도록 마이크로서비스 내부의 복잡성을 숨기는 방법을 배운다. 스프링 클라우드 게이트웨이 기반의 에지 서버를 시스템 환경에 추가하고, 공개 API만 노출하도록 구성하면 과업을 완수할 수 있다.

11장, ‘API 접근 보안’에서는 OAuth 2.0 및 OpenID Connect를 사용해 공개 API를 보호하는 방법을 설명한다. 스프링 시큐리티(Spring Security) 기반 OAuth 2.0 권한 서버를 시스템 환경에 추가하는 방법과 해당 권한 서버에서 발급한 유효한 접근 토큰이 있는 클라이언트만 에지 서버와 복합 서비스에 접근할 수 있도록 구성하는 방법을 배운다. 또한 에지 서버를 통해 권한 부여 서버를 공개하고 HTTPS를 사용해 외부 소비자와의 통신을 보호하는 방법을 배운다. 마지막으로 내부 OAuth 2.0 인증 서버를 외부 OpenID Connect 공급자인 Auth0로 교체하는 방법을 배운다.

12장, ‘구성 중앙화’에서는 하나의 중앙 구성 저장소에서 모든 마이크로서비스의 구성 파일을 가져오고, 구성 서버를 사용해 런타임에 마이크로서비스로 구성을 배포하는 방법을 배운다. 또한 시스템 환경에 스프링 클라우드 컨피그 서버(Spring Cloud Config Server)를 추가하고 스프링 컨피그 서버에서 구성을 가져오도록 마이크로서비스를 구성하는 방법을 배운다.

13장, ‘Resilience4j를 사용한 탄력성 개선’에서는 Resilience4j의 기능을 이용해 연쇄 장애 같은 안티 패턴(anti-pattern)을 방지하는 방법을 설명하며, 복합 서비스에 재시도 메커니즘과 서킷 브레이커(circuit breaker)를 추가하는 방법을 배운다. 또한 서킷이 열려 있을 때 빠른 실패 로직이 작동하도록 서킷 브레이커를 구성하는 방법과 폴백 메서드(fallback method)를 사용해 최적화된 응답을 생성하는 방법을 배운다.

14장, ‘분산 추적’에서는 집킨(Zipkin)을 사용해 추적 정보를 수집하고 시각화하는 방법을 설명한다. 또한 스프링 클라우드 슬루스(Spring Cloud Sleuth)로 요청에 추적 ID를 추가해 공조 마이크로서비스 간의 요청 체인을 시각화하는 방법을 배운다.

15장, ‘쿠버네티스 소개’에서는 쿠버네티스의 핵심 개념과 샘플 디플로이먼트(deployment) 생성 방법을 설명한다. 미니큐브(Minikube)를 사용해 개발 및 테스트 용도의 쿠버네티스를 로컬에 설치하는 방법을 배운다.

16장, ‘쿠버네티스에 마이크로서비스 배포’에서는 쿠버네티스에 마이크로서비스를 배포하는 방법을 설명한다. 그리고 Kustomize를 사용해 테스트 및 상용 환경과 같은 다양한 런타임 환경에 맞춰 쿠버네티스 디플로이먼트(deployment)를 구성하는 방법을 배운다. 또한 쿠버네티스 서비스 객체와 kube-proxy 런타임 컴포넌트를 기반으로 하는, 쿠버네티스에 내장된 서비스 검색 기능으로 넷플릭스 유레카를 대체하는 방법을 배운다.

17장, ‘쿠버네티스로 기존 인프라 대체’에서는 앞에서 소개한 스프링 클라우드 서비스를 쿠버네티스 기능으로 대체하는 방법을 설명한다. 스프링 클라우드 컨피그 서버를 쿠버네티스 시크릿(Kubernetes secret)과 컨피그 맵(config map)으로 대체하는 이유와 방법을 배운다. 또한 스프링 클라우드 게이트웨이를 쿠버네티스 인그레스(Kubernetes ingress) 객체로 대체하는 이유 및 방법을 배우고, Cert Manager를 추가해 Let’s Encrypt에서 HTTPS 엔드포인트를 위해 발급한 인증서를 자동으로 프로비저닝하고 갱신하는 방법을 배운다.

18장, ‘서비스 메시를 사용해 관찰 가능성 및 관리’에서는 편의성 개선 서비스 메시 개념을 소개하고 이스티오를 사용해 런타임에 서비스 메시를 구현하는 방법을 설명한다. 서비스 메시를 사용해 마이크로서비스 환경의 복원력, 보안, 트래픽 관리 및 관찰 가능성을 향상하는 방법을 배운다.

19장, ‘EFK 스택을 사용한 로깅 중앙화’에서는 일래스틱서치(Elasticsearch), 플루언티드(Fluentd), 키바나(Kibana)를 사용해 마이크로서비스의 로그 스트림(log stream)을 수집, 저장, 시각화하는 방법을 설명한다. 미니큐브에 EFK 스택을 배포하는 방법과 EFK 스택으로 수집한 로그 레코드를 분석하는 방법, 여러 마이크로서비스가 관련된 요청을 처리하면서 발생하는 마이크로서비스 로그 출력을 찾는 방법을 배운다. 또한 EFK 스택을 사용해 근본 원인 분석을 수행하는 방법을 배운다.

20장, ‘마이크로서비스 모니터링’에서는 프로메테우스(Prometheus)와 그라파나(Grafana)를 이용해 쿠버네티스에 배포된 마이크로서비스를 모니터링하는 방법을 설명한다. 기존 그라파나 대시보드를 활용해 다양한 유형의 메트릭(metric)을 모니터링하는 방법과 직접 대시보드를 만드는 방법을 배운다. 마지막으로 특정 메트릭에 임계값을 구성하고, 이를 초과하면 이메일을 전송하는 경고를 그라파나에서 생성하는 방법을 배운다.
지은이의 말

스프링 부트와 스프링 클라우드를 사용해 상용 마이크로서비스를 구축하는 방법을 설명하는 책이며, 내가 처음 마이크로서비스 학습을 시작한 5년 전에 찾아 헤맸던 바로 그 책이다.

나는 공조 마이크로서비스 환경을 개발, 테스트, 배포, 관리할 때 사용하는 오픈 소스 소프트웨어를 학습하고 익숙해진 후에 이 책을 썼다.

이 책은 주로 스프링 부트(Spring Boot), 스프링 클라우드(Spring Cloud), 도커(Docker), 쿠버네티스(Kubernetes), 이스티오(Istio), EFK 스택(EFK stack), 프로메테우스(Prometheus), 그라파나(Grafana)를 다룬다. 이런 오픈 소스 도구는 개별적으로는 훌륭하게 작동하지만, 여러 도구를 어떤 방식으로 조합하는 게 좋을지 알아내는 건 어려운 일이다. 어떤 영역에서는 상호 보완적이지만, 다른 영역에서는 겹쳐서 특정 상황에 맞는 명확한 조합이 있는 게 아니기 때문이다. 이 책은 이런 오픈 소스 도구를 함께 사용하는 방법을 실습을 바탕으로 단계별로 설명한다. 내가 마이크로서비스 학습을 시작한 5년 전에 찾던 책이긴 하지만, 오픈 소스 도구는 업데이트된 버전을 사용한다.

옮긴이의 말

시스템 통합이나 엔터프라이즈 업계에서 일하는 자바 개발자라면 최근 몇 년 동안에 몰아 닥친 마이크로서비스 열풍과 이를 보조하는 도커, 쿠버네티스 등의 컨테이너 기반 환경의 인기에 부담감을 느낄 수밖에 없을 것이다. 좀 더 유연하고 확장성 있는 서비스를 위한 시대적인 요구에 따른 것이라곤 하지만, 개발 자체가 아닌 기반 환경의 변화에 따라 맞닥뜨린 급격한 학습 곡선은 개발자에게 그리 달가운 상황은 아니기 때문이다.

이런 새로운 변화에 따른 학습이 필요하다고 느낀다면 이 책은 좋은 선택이 될 것이다. 개발자와 아키텍트가 편하게 볼 수 있도록 이론과 실습을 적절히 조합해서 스프링 부트 및 클라우드를 이용해 마이크로서비스를 구축하는 방법을 설명한다. 또한 다양한 오픈 소스 도구를 도입해야 하는 이유와 스프링 애플리케이션과 연동하는 방법을 배울 수 있다. 넓은 범위를 다루지만 각 기술 요소의 소개보다는 실무에 필요한 범위에 맞춰 핵심을 잘 전달하며, 코드로 설명하는 책이라고 말할 수 있다.

회원리뷰 (0건)

매주 10건의 우수리뷰를 선정하여 YES포인트 3만원을 드립니다.
3,000원 이상 구매 후 리뷰 작성 시 일반회원 300원, 마니아회원 600원의 YES포인트를 드립니다.
(CD/LP, DVD/Blu-ray, 패션 및 판매금지 상품, 예스24 앱스토어 상품 제외) 리뷰/한줄평 정책 자세히 보기
리뷰쓰기

등록된 리뷰가 없습니다.

첫번째 리뷰어가 되어주세요.

한줄평 (2건)

1,000원 이상 구매 후 한줄평 작성 시 일반회원 50원, 마니아회원 100원의 YES포인트를 드립니다.
(CD/LP, DVD/Blu-ray, 패션 및 판매금지 상품, 예스24 앱스토어 상품 제외) 리뷰/한줄평 정책 자세히 보기
0/50

배송/반품/교환 안내

배송 안내

배송 안내
배송 구분 YES24 배송
  •  배송비 : 무료배송
포장 안내

안전하고 정확한 포장을 위해 CCTV를 설치하여 운영하고 있습니다.

고객님께 배송되는 모든 상품을 CCTV로 녹화하고 있으며, 철저한 모니터링을 통해 작업 과정에 문제가 없도록 최선을 다 하겠습니다.

목적 : 안전한 포장 관리
촬영범위 : 박스 포장 작업

  • 포장안내1
  • 포장안내2
  • 포장안내3
  • 포장안내4

반품/교환 안내

※ 상품 설명에 반품/교환과 관련한 안내가 있는경우 아래 내용보다 우선합니다. (업체 사정에 따라 달라질 수 있습니다)

반품/교환 안내
반품/교환 방법
  •  마이페이지 > 반품/교환 신청 및 조회, 1:1 문의, 고객만족센터(1544-3800), 중고샵(1566-4295)
  •  판매자 배송 상품은 판매자와 반품/교환이 협의된 상품에 한해 가능합니다.
반품/교환 가능기간
  •  출고 완료 후 10일 이내의 주문 상품
  •  디지털 콘텐츠인 eBook의 경우 구매 후 7일 이내의 상품
  •  중고상품의 경우 출고 완료일로부터 6일 이내의 상품 (구매확정 전 상태)
반품/교환 비용
  •  고객의 단순변심 및 착오구매일 경우 상품 반송비용은 고객 부담임
  •  직수입양서/직수입일서중 일부는 변심 또는 착오로 취소시 해외주문취소수수료 20%를 부과할수 있음

    단, 아래의 주문/취소 조건인 경우, 취소 수수료 면제

    •  오늘 00시 ~ 06시 30분 주문을 오늘 오전 06시 30분 이전에 취소
    •  오늘 06시 30분 이후 주문을 익일 오전 06시 30분 이전에 취소
  •  직수입 음반/영상물/기프트 중 일부는 변심 또는 착오로 취소 시 해외주문취소수수료 30%를 부과할 수 있음

    단, 당일 00시~13시 사이의 주문은 취소 수수료 면제

  •  박스 포장은 택배 배송이 가능한 규격과 무게를 준수하며, 고객의 단순변심 및 착오구매일 경우 상품의 반송비용은 박스 당 부과됩니다.
반품/교환 불가사유
  •  소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
  •  소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우 : 예) 화장품, 식품, 가전제품, 전자책 단말기 등
  •  복제가 가능한 상품 등의 포장을 훼손한 경우 : 예) CD/LP, DVD/Blu-ray, 소프트웨어, 만화책, 잡지, 영상 화보집
  •  소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우
  •  디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  •  eBook 대여 상품은 대여 기간이 종료 되거나, 2회 이상 대여 했을 경우 취소 불가
  •  중고상품이 구매확정(자동 구매확정은 출고완료일로부터 7일)된 경우
  •  LP상품의 재생 불량 원인이 기기의 사양 및 문제인 경우 (All-in-One 일체형 일부 보급형 오디오 모델 사용 등)
  •  시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  •  전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
소비자 피해보상
  •  상품의 불량에 의한 반품, 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁해결기준(공정거래위원회 고시)에 준하여 처리됨
환불 지연에 따른 배상
  •  대금 환불 및 환불 지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리
맨위로
예스이십사(주)
서울시 영등포구 은행로 11, 5층~6층(여의도동,일신빌딩) 대표 : 김석환   개인정보보호책임자 : 권민석 yes24help@yes24.com 사업자등록번호 : 229-81-37000   통신판매업신고 : 제 2005-02682호 사업자 정보확인 호스팅 서비스사업자 : 예스이십사(주)
YES24 수상내역 정보보호 관리체계 ISMS인증획득 개인정보보호 우수사이트
소비자피해보상보험 서울보증보험
고객님은 안전거래를 위해 현금 등으로 결제 시 저희 쇼핑몰에서 가입한 구매안전서비스를 이용하실 수 있습니다. 서비스가입사실 확인
EQUUS11