확장메뉴
주요메뉴


소득공제
미리보기 공유하기

스프링 마이크로서비스 코딩 공작소

: 스프링 부트와 스프링 클라우드를 이용한 마이크로서비스 모범 사례

[ 개정 2판 ]
리뷰 총점9.3 리뷰 7건 | 판매지수 3,642
베스트
IT 모바일 top100 3주
[대학생X취준생] 2023년에도 중요한 것은 꺾이지 않는 마음
[IT 기획전] IT, 모두의 교양
박해선 저자의 머신러닝/딥러닝 패스
비전공자 출신 프론트엔드 개발자 '임효성'님이 추천하는 개발 입문 책
더 나은 개발자로 살아가기 위한 『개발자 원칙』
[단독]『혼자 공부하는 파이썬』 개정판 출간
(핫팩 증정!) 길벗 IT브랜드전
1월의 굿즈 : 디즈니 캐릭터 대용량 머그/머그&티스푼 세트/클로버 북백/북파우치 3종 세트/크리스탈 문진
YES24 트윈링 분철 : 인서트라벨/스티커 택1 증정
1월의 얼리리더 주목 신간 : 꿈꾸는 토끼 배지 증정
쇼핑혜택
현대카드
1 2 3 4 5

품목정보

품목정보
발행일 2022년 06월 30일
쪽수, 무게, 크기 524쪽 | 974g | 183*235*35mm
ISBN13 9791140700448
ISBN10 1140700448

책소개 책소개 보이기/감추기

목차 목차 보이기/감추기

1장 스프링, 클라우드와 만나다

1.1 마이크로서비스 아키텍처로 진화
__1.1.1 N-계층 아키텍처
__1.1.2 모놀리스 아키텍처
__1.1.3 마이크로서비스란?
__1.1.4 애플리케이션 구축 방법을 왜 바꾸어야 할까?
1.2 스프링 마이크로서비스
1.3 우리가 구축할 것은 무엇인가?
1.4 이 책의 내용
__1.4.1 이 책에서 배울 내용
__1.4.2 이 책의 연관성
1.5 클라우드 및 마이크로서비스 기반 애플리케이션
__1.5.1 스프링 부트로 마이크로서비스 구축하기
__1.5.2 클라우드 컴퓨팅이란 정확히 무엇인가?
__1.5.3 왜 클라우드와 마이크로서비스인가?
1.6 마이크로서비스는 코드 작성 이상을 의미한다
1.7 핵심 마이크로서비스 개발 패턴
1.8 마이크로서비스 라우팅 패턴
1.9 마이크로서비스 클라이언트 회복성
1.10 마이크로서비스 보안 패턴
1.11 마이크로서비스 로깅과 추적 패턴
1.12 애플리케이션 지표 패턴
1.13 마이크로서비스 빌드/배포 패턴
1.14 요약

2장 스프링 클라우드와 함께 마이크로서비스 세계 탐험

2.1 스프링 클라우드란?
__2.1.1 스프링 클라우드 컨피그
__2.1.2 스프링 클라우드 서비스 디스커버리
__2.1.3 스프링 클라우드 로드 밸런서와 Resilience4j
__2.1.4 스프링 클라우드 API 게이트웨이
__2.1.5 스프링 클라우드 스트림
__2.1.6 스프링 클라우드 슬루스
__2.1.7 스프링 클라우드 시큐리티
2.2 스프링 클라우드 예제 소개
2.3 클라우드 네이티브 마이크로서비스 구축 방법
__2.3.1 코드베이스
__2.3.2 의존성
__2.3.3 구성 정보
__2.3.4 백엔드 서비스
__2.3.5 빌드, 릴리스, 실행
__2.3.6 프로세스
__2.3.7 포트 바인딩
__2.3.8 동시성
__2.3.9 폐기 가능
__2.3.10 개발 및 운영 환경 일치
__2.3.11 로그
__2.3.12 관리 프로세스
2.4 적절한 예제 도입
2.5 스프링 부트와 자바로 마이크로서비스 만들기
__2.5.1 환경 설정
__2.5.2 뼈대 프로젝트 시작하기
__2.5.3 스프링 부트 애플리케이션 부팅하기: 부트스트랩 클래스 작성
2.6 요약

3장 스프링 부트로 마이크로서비스 구축하기

3.1 아키텍트 이야기: 마이크로서비스 아키텍처 설계
__3.1.1 비즈니스 문제 분해
__3.1.2 서비스 세분화 확정
__3.1.3 서비스 인터페이스 설계
3.2 마이크로서비스를 사용하지 말아야 할 때
__3.2.1 분산 시스템 구축의 복잡성
__3.2.2 서버 또는 컨테이너 스프롤
__3.2.3 애플리케이션 타입
__3.2.4 데이터 트랜잭션과 일관성
3.3 개발자 이야기: 스프링 부트와 자바
__3.3.1 마이크로서비스의 출입구 만들기: 스프링 부트 컨트롤러
__3.3.2 라이선싱 서비스에 국제화 추가하기
__3.3.3 관련 링크를 표시하는 스프링 HATEOAS 구현
3.4 데브옵스 이야기: 혹독한 런타임 구축
__3.4.1 서비스 조립: 마이크로서비스의 패키징과 배포
__3.4.2 서비스 부트스트래핑: 마이크로서비스의 구성 관리
__3.4.3 서비스 등록과 디스커버리: 클라이언트가 마이크로서비스와 통신하는 방법
__3.4.4 마이크로서비스의 상태 전달
3.5 모든 관점 통합하기
3.6 요약

4장 도커

4.1 컨테이너 또는 가상 머신?
4.2 도커란?
4.3 Dockerfiles
4.4 도커 컴포즈
4.5 마이크로서비스와 도커 통합하기
__4.5.1 도커 이미지 만들기
__4.5.2 스프링 부트로 도커 이미지 생성하기
__4.5.3 도커 컴포즈로 서비스 실행하기
4.6 요약

5장 스프링 클라우드 컨피그 서버로 구성 관리

5.1 구성(그리고 복잡성) 관리
__5.1.1 구성 관리 아키텍처
__5.1.2 구현 솔루션 선택
5.2 스프링 클라우드 컨피그 서버 구축
__5.2.1 스프링 클라우드 컨피그 부트스트랩 클래스 설정
__5.2.2 스프링 클라우드 컨피그 서버에 파일 시스템 사용
__5.2.3 서비스의 구성 파일 설정
5.3 스프링 클라우드 컨피그와 스프링 부트 클라이언트 통합
__5.3.1 라이선싱 서비스의 스프링 클라우드 컨피그 서비스 의존성 설정
__5.3.2 스프링 클라우드 컨피그 사용을 위한 라이선싱 서비스 구성
__5.3.3 스프링 클라우드 컨피그 서버를 사용하여 데이터 소스 연결
__5.3.4 @ConfigurationProperties를 사용하여 프로퍼티 직접 읽기
__5.3.5 스프링 클라우드 컨피그 서버를 사용하여 프로퍼티 갱신
__5.3.6 깃과 함께 스프링 클라우드 컨피그 서버 사용
__5.3.7 볼트와 스프링 클라우드 컨피그 서비스 통합
__5.3.8 볼트 UI
5.4 중요한 구성 정보 보호
__5.4.1 대칭 암호화 키 설정
__5.4.2 프로퍼티 암호화와 복호화
5.5 마치며
5.6 요약

6장 서비스 디스커버리

6.1 서비스 위치 확인
6.2 클라우드에서 서비스 디스커버리
__6.2.1 서비스 디스커버리 아키텍처
__6.2.2 스프링과 넷플릭스 유레카를 사용한 서비스 디스커버리
6.3 스프링 유레카 서비스 구축
6.4 스프링 유레카에 서비스 등록
__6.4.1 유레카 REST API
__6.4.2 유레카 대시보드
6.5 서비스 디스커버리를 이용한 서비스 검색
__6.5.1 스프링 Discovery Client로 서비스 인스턴스 검색
__6.5.2 로드 밸런서를 지원하는 스프링 REST 템플릿으로 서비스 호출
__6.5.3 넷플릭스 Feign 클라이언트로 서비스 호출
6.6 요약

7장 나쁜 상황에 대비한 스프링 클라우드와 Resilience4j를 사용한 회복성 패턴

7.1 클라이언트 측 회복성이란?
__7.1.1 클라이언트 측 로드 밸런싱
__7.1.2 회로 차단기
__7.1.3 폴백 처리
__7.1.4 벌크헤드
7.2 클라이언트 회복성이 중요한 이유
7.3 Resilience4j 구현
7.4 스프링 클라우드와 Resilience4j를 사용하는 라이선싱 서비스 설정
7.5 회로 차단기 구현
__7.5.1 조직 서비스에 회로 차단기 추가
__7.5.2 회로 차단기 사용자 정의
7.6 폴백 처리
7.7 벌크헤드 패턴 구현
7.8 재시도 패턴 구현
7.9 속도 제한기 패턴 구현
7.10 ThreadLocal과 Resilience4j
7.11 요약

8장 스프링 클라우드 게이트웨이를 이용한 서비스 라우팅

8.1 서비스 게이트웨이란?
8.2 스프링 클라우드 게이트웨이 소개
__8.2.1 스프링 부트 게이트웨이 프로젝트 설정
__8.2.2 유레카와 통신하는 스프링 클라우드 게이트웨이 구성
8.3 스프링 클라우드 게이트웨이에서 라우팅 구성
__8.3.1 서비스 디스커버리를 이용한 자동 경로 매핑
__8.3.2 서비스 디스커버리를 이용한 수동 경로 매핑
__8.3.3 동적으로 라우팅 구성을 재로딩
8.4 스프링 클라우드 게이트웨이의 진정한 능력: Predicate과 Filter Factories
__8.4.1 게이트웨이 Predicate Factories
__8.4.2 게이트웨이 Filter Factories
__8.4.3 사용자 정의 필터
8.5 사전 필터 만들기
8.6 서비스에서 상관관계 ID 사용
__8.6.1 유입되는 HTTP 요청을 가로채는 UserContextFilter
__8.6.2 서비스에 쉽게 액세스할 수 있는 HTTP 헤더를 만드는 UserContext
__8.6.3 상관관계 ID 전파를 위한 사용자 정의 RestTemplate과 UserContextInterceptor
8.7 상관관계 ID를 수신하는 사후 필터 작성
8.8 요약

9장 마이크로서비스 보안

9.1 OAuth2 소개
9.2 키클록 소개
9.3 작게 시작하기: 스프링과 키클록으로 한 개의 엔드포인트 보호
__9.3.1 도커에 키클록 추가하기
__9.3.2 키클록 설정
__9.3.3 클라이언트 애플리케이션 등록
__9.3.4 O-stock 사용자 구성
__9.3.5 O-stock 사용자 인증
9.4 키클록으로 조직 서비스 보호하기
__9.4.1 스프링 시큐리티와 키클록 JARs를 서비스에 추가
__9.4.2 키클록 서버 접속을 위한 서비스 구성
__9.4.3 서비스에 접근할 수 있는 사용자 및 대상 정의
__9.4.4 액세스 토큰 전파
__9.4.5 JWT의 사용자 정의 필드 파싱
9.5 마이크로서비스 보안을 마치며
__9.5.1 모든 서비스 통신에 HTTPS/SSL을 사용하라
__9.5.2 서비스 게이트웨이를 사용하여 마이크로서비스에 접근하라
__9.5.3 공개 API 및 비공개 API 영역을 지정하라
__9.5.4 불필요한 네트워크 포트를 차단해서 마이크로서비스 공격 지점을 제한하라
9.6 요약

10장 스프링 클라우드 스트림을 사용한 이벤트 기반 아키텍처

10.1 메시징과 EDA, 마이크로서비스의 사례
__10.1.1 동기식 요청- 응답 방식으로 상태 변화 전달
__10.1.2 메시징을 사용한 서비스 간 상태 변화 전달
__10.1.3 메시징 아키텍처의 단점
10.2 스프링 클라우드 스트림 소개
10.3 간단한 메시지 생산자와 소비자 작성
__10.3.1 아파치 카프카 및 레디스 도커 구성
__10.3.2 조직 서비스에서 메시지 생산자 작성
__10.3.3 라이선싱 서비스에서 메시지 소비자 작성
__10.3.4 메시지 서비스 동작 보기
10.4 스프링 클라우드 스트림 사용 사례: 분산 캐싱
__10.4.1 캐시 검색을 위한 레디스
__10.4.2 사용자 정의 채널 설정
10.5 요약

11장 스프링 클라우드 슬루스와 집킨을 이용한 분산 추적

11.1 스프링 클라우드 슬루스와 상관관계 ID
__11.1.1 라이선싱 및 조직 서비스에 스프링 클라우드 슬루스 추가
__11.1.2 스프링 클라우드 슬루스의 추적 분석
11.2 로그 수집과 스프링 클라우드 슬루스
__11.2.1 동작하는 스프링 클라우드 슬루스/ELK 스택 구현
__11.2.2 서비스에서 로그백 구성
__11.2.3 도커에서 ELK 스택 애플리케이션 정의 및 실행
__11.2.4 키바나 구성
__11.2.5 키바나에서 스프링 클라우드 슬루스의 추적 ID 검색
11.3 집킨을 사용한 분산 추적
__11.3.1 스프링 클라우드 슬루스와 집킨 의존성 설정
__11.3.2 집킨 연결을 위한 서비스 구성 설정
__11.3.3 집킨 서버 구성
__11.3.4 추적 레벨 설정
__11.3.5 집킨으로 트랜잭션 추적
__11.3.6 더 복잡한 트랜잭션의 시각화
__11.3.7 메시징 추적 수집
__11.3.8 사용자 정의 스팬
11.4 요약

12장 마이크로서비스 배포

12.1 빌드/배포 파이프라인 아키텍처
12.2 클라우드에 O-stock 핵심 인프라스트럭처 설정
__12.2.1 아마존 RDS를 사용한 PostgreSQL 데이터베이스 생성
__12.2.2 아마존에 레디스 클러스터 구축
12.3 인프라스트럭처를 넘어: O-stock과 ELK 배포
__12.3.1 ELK EC2 생성
__12.3.2 EC2 인스턴스에 ELK 스택 배포
__12.3.3 EKS 클러스터 생성
12.4 빌드/배포 파이프라인 인 액션
12.5 빌드/배포 파이프라인 생성
__12.5.1 깃허브 설정
__12.5.2 젠킨스에서 서비스 빌드 활성화
__12.5.3 파이프라인 스크립트 이해 및 작성
__12.5.4 쿠버네티스 파이프라인 스크립트 작성
12.6 빌드/배포 파이프라인 고찰
12.7 요약

부록 A 마이크로서비스 아키텍처 모범 사례

A.1 리처드슨 성숙도 모델
A.2 스프링 HATEOAS
A.3 구성 외부화
A.4 지속적 통합(CI)과 지속적 전달(CD)
A.5 모니터링
A.6 로깅
A.7 API 게이트웨이

부록 B OAuth2 그랜트 타입

B.1 패스워드 그랜트 타입
B.2 클라이언트 자격 증명 그랜트 타입
B.3 인가 코드 그랜트 타입
B.4 암시적 그랜트 타입
B.5 토큰 리프레시 방법

부록 C 서비스 모니터링

C.1 스프링 부트 액추에이터로 모니터링
__C.1.1 스프링 부트 액추에이터 추가
__C.1.2 액추에이터 엔드포인트 활성화
C.2 마이크로미터와 프로메테우스 설정
__C.2.1 마이크로미터와 프로메테우스의 이해
__C.2.2 마이크로미터와 프로메테우스 구현
C.3 그라파나 구성
C.4 요약

저자 소개 (3명)

책 속으로 책속으로 보이기/감추기

마이크로서비스 아키텍처(Microservices Architecture), MSA는 이제 적어도 소프트웨어 분야에서는 인기 많고 원숙한 아키텍처 방법론으로 자리 잡았다. 이는 기업 및 조직의 개발자뿐만 아니라 기획자, 마케팅, 사업, 구매 및 검증 부서의 사람들도 알아볼 만큼 대중적이고 평범한 기술이 된 것 같다. 그래서 혹자(대부분 제대로 해 본 적이 없거나 새로운 트렌드만 좇는 사람들)는 MSA는 한물 갔다고까지 말하곤 한다. 하지만 역자는 여러 조직의 마이크로서비스 및 클라우드 네이티브 프로젝트의 성공과 실패 사례를 보고 연구하면서 제대로 마이크로서비스 아키텍처를 도입하거나 전환하는 것이 얼마나 어려운지 분명히 깨닫게 되었다. 아는 만큼 어렵다는 말이 역설처럼 들리지만, 이 책에 소개된 정도의 마이크로서비스의 여러 원칙과 실천 사항을 이해하고 따르는 것은 마이크로서비스를 작성하는 것 이상(조직과 팀의 책임과 권한, DDD에 기반을 둔 적절한 분리, 독립적이고 자동화된 배포, IaC, 불변성 및 완전성의 산출물, 구성 서버, 이벤트 기반 설계, 데이터 동기화, 중앙화된 로깅 및 모니터링 등)을 필요로 하기 때문에 쉬운 일은 아니다. 우리는 복잡함이라는 비용으로 생산성, 확장성, 안정성이라는 마이크로서비스의 혜택을 누리려고 한다. 이 책은 마이크로서비스에 필요한 원칙 및 개념을 쉽게 설명하고 실제 스프링 코드와 도구로 실습하면서 독자의 이해를 돕는다는 면에서 특별하다.

마이크로서비스의 개념이 소개된 2015년 이후 이 책의 첫 판은 스프링 부트와 클라우드를 활용한 마이크로서비스 아키텍처의 좋은 길잡이가 되었다. 1판에서 스프링 마이크로서비스 기반의 애플리케이션 구축에 필요한 구성 서버, 서비스 디스커버리, 부하 처리, 보안, 로깅, 빌드 및 배포 등 다양한 주제를 각종 스프링 기술과 함께 소개했다. 각 장에서 소개된 필자의 경험담과 노트도 유익하며, 독립적으로 각 장이 분리되어 있어 쉽게 실행하고 테스트해 볼 수 있다는 것은 마이크로서비스의 특징과 닮은 이 책의 장점이다. 2판에서는 이러한 장점들을 그대로 이어받아, 이 주제를 기반으로 12 팩터 앱, 도커, 컨피그 서버의 하시코프 볼트 백엔드 저장소, 클라우드 로드 밸런서를 활용한 디스커버리, Resilience4j를 활용한 회복성, 스프링 클라우드 게이트웨이, OAuth2/키클록을 통한 서비스 보안, ELK 로깅 서버, AWS EKS 및 젠킨스 CI/CD, 그라파나와 프로메테우스를 활용한 모니터링 등 더욱 풍부한 사례와 기술 내용을 소개하므로 마이크로서비스 개발자들에게 좋은 지침서가 될 것으로 기대한다.

번역서에서는 각종 프레임워크 및 도구의 최신 버전에 맞게 실행 명령을 수정했다. 또한 애플 M1 계열과 호환성을 테스트했고, 실행 편의를 돕는 스크립트와 포스트맨 테스트케이스도 추가했다.
--- 「옮긴이의 말」 중에서

출판사 리뷰 출판사 리뷰 보이기/감추기

이론은 탄탄하게,실습은 실무에 가깝게!

스프링 부트 + 스프링 클라우드로 시작하자

마이크로서비스는 서비스 개발, 그 이상(클라우드, 인프라, 자동화, 테스팅, 회복성, 보안, 인증, 로깅, 모니터링, 배포 등)을 필요로 한다. 클라우드를 사용하면 안정성, 생산성, 확장성, 유지 보수 등 여러 가지 면에서 유용하다. 책에서는 이러한 장점이 있는 스프링 클라우드를 사용해 마이크로서비스의 빌드와 배포를 최소화한다. 스프링 부트와 스프링 클라우드로 마이크로서비스를 시작해 보자.

현실적이고 실용적인 코드로 학습하자

MSA/클라우드 네이티브 환경에서 다양한 프로젝트를 경험한 아키텍트와 개발자로 활동해 온 두 명의 저자가 현업에서 활용 가능한 최신 컨테이너 기반의 마이크로서비스 코드를 수록했다. 스프링 부트와 스프링 클라우드 2 버전에 호환되는 실용적인 예제를 직접 실행하며 마이크로서비스의 개념을 확실히 이해할 수 있다.

핵심 패턴을 익히자

마이크로서비스를 개념적으로 이해하고 작성하는 것은 가능하지만, 대규모 마이크로서비스 애플리케이션을 클라우드에서 배포하고 운영하는 것은 코드를 작성하는 것 이상을 필요로 한다. 책에서는 핵심 마이크로서비스 개발 패턴, 라우팅 패턴, 클라이언트 회복성 패턴, 구축/배치 패턴 등 주요 개념을 스프링 부트와 스프링 클라우드로 구현한다.

추천평 추천평 보이기/감추기

스프링 클라우드와 함께 클라우드 네이티브의 개념에서 적용까지 기술 전반의 내용을 다루고 있어 개발자들이 좀 더 빠르게 학습하고 성장하는 데 많은 도움이 될 것입니다.
- 신정호 (LGU+ 아이들나라 CTO)

서비스 디스커버리, 구성 서버, API 게이트웨이, 회로 차단기, OAuth 서버, 이벤트 프로그래밍, 로깅과 빌드까지 네이티브 클라우드 애플리케이션의 모든 기능을 알차게 소개합니다.
- 이승윤 (마이크로소프트)

처음 시작하는 초심자에게는 길잡이가 될 것이며, 이미 운영하고 발전시키고 있는 실무자에게는 든든한 동반자가 될 수 있는 책입니다.
- 이정인 (VMware Tanzu 상무)

스프링에 익숙한 개발자분들이 클라우드 기반의 애플리케이션 구현에 필요한 기술들을 학습할 수 있게 하여 업무와 커리어 모두에 많은 도움이 될 수 있는 책입니다.
- 정윤진 (포커스미디어 CTO)

이 책은 기업 환경에서 어떻게 서비스를 만들고 개선해 나갈 수 있는지 같은 다양한 고민들에 대한 해법을 제시합니다.
- 정영준 (AWS)

자바 개발자가 마이크로서비스를 이해하고 적용하는 데 최고의 책이라고 생각됩니다.
- 우경우 (삼성전자, 애자일 코치, Principal Engineer)

회원리뷰 (7건) 리뷰 총점9.3

혜택 및 유의사항?
구매 스프링 마이크로서비스 코딩 공작소 내용 평점4점   편집/디자인 평점4점 YES마니아 : 로얄 h******o | 2023.01.22 | 추천0 | 댓글0 리뷰제목
현재 회사에 스피링부트를 사용하여  마이크로서비스 아키텍처 를 적용하고 있습니다. 회사에서는 주어진 업무만 진행하고 있기 때문에 정확한 마이크로서비스 아키텍쳐에 대한 이해가 부족하다 느껴서 이책을 구매하게 되었습니다. 이책을 선택한 이유는 마이크로서비스의 거의 모든 내용을 다르고 있으며 개정 2판이기 때문에 믿을만 하다 생각했습니다. 스프링기본 내용과 프;
리뷰제목

현재 회사에 스피링부트를 사용하여  마이크로서비스 아키텍처 를 적용하고 있습니다.

회사에서는 주어진 업무만 진행하고 있기 때문에 정확한 마이크로서비스 아키텍쳐에 대한 이해가 부족하다 느껴서 이책을 구매하게 되었습니다.

이책을 선택한 이유는 마이크로서비스의 거의 모든 내용을 다르고 있으며 개정 2판이기 때문에 믿을만 하다 생각했습니다.

스프링기본 내용과 프레임워크 대한 설명은 많지만 마이크로 서비스의 최적화된 스프링기술에 대한 내용의 책들은 거의없기때문에 이책을 통해 최적화된 스프링 기술을 익힐수 있었습니다.

또한 예제 실습코드를 따라 하면서 어떻게 동작하는지 확인할수 있었고 전체적인 아키텍쳐를 이해하는데 많은 도움이 되어있습니다.

특히 스프링부트와 KeyCloack를 통한 권한 인증을 처리하는 부분이 좋았고 언제나 보안때문에 어려고 번거로왔는데 KeyCloack 소개와 활용방법에 대한 내용이 있어서 아주 만족스러웠습니다.

이제 이책의 내용을 토대로 나만의 마이크로 서비스를 만들기 위한 작업을 하고 있습니다.

이책이 전부는 아니겠지만 스프링부트로 개발하는 MSA 컴포넌트를 개발할때 많은 도움이 될거같습니다.

댓글 0 이 리뷰가 도움이 되었나요? 공감 0
스프링 마이크로서비스 코딩 공작소 내용 평점5점   편집/디자인 평점4점 오*라 | 2022.08.08 | 추천1 | 댓글0 리뷰제목
* YES24 리뷰어 클럽 서평단 자격으로 작성한 리뷰입니다.* 이 서평에는 해당 책의 내용이 다소 포함되어 있어 스포가 될 수 있습니다.이 책은 스프링 프레임워크를 다룰 때 설계에 대한 방법을 제시하는 책으로, 서비스들을 분산해서 처리하는 방법들이 내용에 담겨있다. 마이크로 서비스에 대한 효용이나 장점을 배울 수 있고, 소프트웨어 공학수업 시간에서 다루는 ‘높은 응집도’와;
리뷰제목

* YES24 리뷰어 클럽 서평단 자격으로 작성한 리뷰입니다.
* 이 서평에는 해당 책의 내용이 다소 포함되어 있어 스포가 될 수 있습니다.

이 책은 스프링 프레임워크를 다룰 때 설계에 대한 방법을 제시하는 책으로, 서비스들을 분산해서 처리하는 방법들이 내용에 담겨있다. 마이크로 서비스에 대한 효용이나 장점을 배울 수 있고, 소프트웨어 공학수업 시간에서 다루는 ‘높은 응집도’와 ‘낮은 결합도’를 잘 구현할 수 있게 해주는 책이며, 이 부분이 이 책의 핵심이라 할 수 있다.
마이크로서비스를 설계할 때에 확장성이 용이하고, 유지 보수 측면에서도 효율적으로 처리하는 부분들을 개발 패턴(보안 패턴, 회복성 패턴 등) 형식으로 잘 정리하였다.
Logging이나 Bulid에 대한 부분도 상세하게 다루고 있는데, 현업에서 ELK(Logging)를 사용할 때 써먹을 수 있는 팁들이 많이 담겨있어서 좋았고, 뿐만 아니라 인프라적 측면에서 ‘네트워크의 L4 스위치 로드밸런싱이나, 장애에 대한 회복 등을 어떤 식으로 처리하는지’, ‘단순히 개발적 측면이 아닌 인프라의 구성도를 어떻게 해놓아야지 시스템을 효율적으로 사용할 수 있을지’ 등에 대해 기술되어 있어서 많은 도움이 되었다.
초급 개발자가 읽기에는 다소 어렵다고 느낄 수 있는 책이기 때문에 중급 프로그래머나 인프라에 관심이 많은 분들께 이 책을 추천한다.
댓글 0 1명이 이 리뷰를 추천합니다. 공감 1
MSA를 위한 입문서이자 기초 바이블 내용 평점5점   편집/디자인 평점5점 p********s | 2022.08.07 | 추천0 | 댓글0 리뷰제목
최근 사내에 있는 모놀리식 기반 서비스들을 운영하면서 규모가 커진 서비스 때문에 배포도 복잡해지고,  배포 이후에도 여러 서비스에 대한 사이드이펙트를 QA하기 위해 많은 리소스가 소모되었습니다. 최근 많이 언급되는 키워드기도하고 MSA에대한 궁금증이 많아지던 찰나  많은 사람들이 추천해주시던 "스프링 마이크로서비스 코딩 공작소" 개정판이 나왔다고 하여 읽어보;
리뷰제목

최근 사내에 있는 모놀리식 기반 서비스들을 운영하면서 규모가 커진 서비스 때문에 배포도 복잡해지고, 
배포 이후에도 여러 서비스에 대한 사이드이펙트를 QA하기 위해 많은 리소스가 소모되었습니다.

최근 많이 언급되는 키워드기도하고 MSA에대한 궁금증이 많아지던 찰나 
많은 사람들이 추천해주시던 "스프링 마이크로서비스 코딩 공작소" 개정판이 나왔다고 하여 읽어보았습니다.

책에 언급 되었듯이 "이론은 탄탄하게, 실습은 실무에 가깝게!" 라는 문장이 가장 적합하게 느껴질정도로
하나의 서비스를 스프링 부트 + 스프링 클라우드 기반의 마이크로서비스로 구현하면서 
과정의 모든 내용들을 체계적으로 경험할 수 있도록 구성이 되어있어 좋았습니다.

 

책에서 사용 될 서비스 구조와 내용을 소개하고, 이 과정들을 차근차근 챕터 별로 설명해나가는데
각 장의 구성마다 모두 알찬 내용으로 가득했고 개념을 확실하게 잡고 갈 수 있도록 이유도 충분히 설명하고 있었습니다.

마이크로서비스의 개념, 구축방법, 도커, 컨피그 구성, 서비스 라우팅, 보안, 배포, 모니터링 등
작은 규모의 서비스라면 바로 모범사례로 도입해도 될 느낌의 구성으로 소개를 하고 있었고
실질적으로 책의 예제코드를 구현내가나면서 마이크로서비스에 대해 많은 이해와 인사이트를 얻을 수 있어 좋았습니다.

단순히 기술들을 나열해두고, 스토리 없는 예제 코드들로 구성 된 도서는 읽기가 어려운데
이 책의 경우는 처음에 구성할 프로젝트의 아키텍처를 표시하고 이를 왜 구성하는지 순차적으로 설명해서
자연스럽게 완독하기가 너무 좋았던 책이었습니다.

특히 자연스럽게 마이크로서비스에 대한 이해도를 높일 수 있었다는 부분이 매우 만족스러웠던 것 같습니다.

마이크로서비스에 관심이 있는 분이라면 너무 적절한 입문서이자 바이블이 되지 싶습니다.


 

댓글 0 이 리뷰가 도움이 되었나요? 공감 0

한줄평 (2건) 한줄평 총점 9.0

혜택 및 유의사항 ?
평점4점
내용 좋음. 오타, 번역오류, 편집오류가 집중을 방해함. 원문 pdf를 대조해서 보세요.
이 한줄평이 도움이 되었나요? 공감 0
YES마니아 : 로얄 n****g | 2022.08.15
구매 평점5점
전체적인 msa 설계를 알 수 있는 책이다
이 한줄평이 도움이 되었나요? 공감 0
-* | 2022.08.07
  •  쿠폰은 결제 시 적용해 주세요.
1   34,200
뒤로 앞으로 맨위로 aniAlarm