[서평] 엔터프라이즈 자바 마이크로서비스 - 한빛미디어

728x90

6월의 서평 도서는 '엔터프라이즈 자바 마이크로서비스'이다. 이전에 길벗 출판사의 '마이크로서비스 패턴' 책을 서평하면서 마이크로서비스를 처음 접하게 되었다. 사실 내용이 신입개발자인 나에게는 쉽지 않았다고 생각한다. 마이크로서비스 패턴이 아무래도 모놀리식을 여러 마이크로서비스로 쪼개는 것 자체가 신입 개발자 입장에서는 생소하고 접해보지 못한 영역이다 보니 그렇겠지...? 라고 스스로를 위로해본다. 

아무튼 이번 책은 저번과는 조금 더 쉽게 이해할 수 있기를 바라면서... 또한 책 제목에도 적혀있듯이, 자바 개발자를 겨냥한 책이다. 자바 개발자로 훌륭하게 성장하고 싶다면, 언젠가는 접해야할 내용일 것이다. (언젠가 DDD를 공부할 나를 위한 선행학습이라고 생각하자!! 참고로 DDD는 '도메인 주도 설계'라는 것인데, 궁금하다면 찾아볼 것을 추천한다.) 

자 이제 시작해보자! 

서평의 첫 순서는 역시 목차를 훑어보면서, 이 책이 어떤 내용들을 다루고 있는지, 또 어떤 순서로 설명하는지 알아보자! 


목차

  1. 엔터프라이즈 자바 마이크로서비스

    1.1 엔터프라이즈 자바의 역사

    1.2 마이크로서비스와 분산 아키텍처

    1.3 마이크로서비스로 마이그레이션할 때 사용할 수 있는 패턴들 

    1.4 엔터프라이즈 자바 마이크로서비스란 무엇인가?

  2. 간단한 RESTful 마이크로서비스 개발하기

    2.1 카얌베 모노리스

    2.2 새로운 관리 사이트


  3. 마이크로서비스를 위한 애플리케이션 서버

    3.1 꼭 필요한 만큼의 애플리케이션 서버

    3.2 JeAS 선택하기
  4. 마이크로서비스 테스트

    4.1 어떤 유형의 테스트가 필요한가?

    4.2 단위 테스트

    4.3 불변성이란 무엇인가? 

    4.4 통합 테스트

    4.5 소비자 중심 계약 테스트
  5. 클라우드 네이티브 개발 

    5.1 클라우드란 무엇인가? 

    5.2 서비스 모델

    5.3 클라우드 네이티브 개발 

    5.4 클라우드에 전개하기

    5.5 미니시프트 시작하기

    5.6 마이크로서비스 클라우드 전개 

    5.7 클라우드에서 테스트하기 

  6. 마이크로서비스 소비하기

    6.1 자바 클라이언트 라이브러리를 통해 마이크로서비스 소비하기

    6.2 JAX-RS 클라이언트 라이브러리로 마이크로서비스 소비하기

  7. 소비할 마이크로서비스 발견하기 

    7.1 왜 마이크로서비스를 발견할 수 있어야 하는가?

    7.2 손테일로 마이크로서비스 등록하기

    7.3 손테일을 통해 등록한 마이크로서비스 소비하기

  8. 내고장성과 모니터링 전략

    8.1 분산 아키텍처에서 발생하는 마이크로서비스의 실패

    8.2 네트워크 실패

    8.3 실패 영향 경감시키기

    8.4 히스트릭스를 지불 마이크로서비스에 추가하기

  9. 마이크로서비스 보안

    9.1 마이크로서비스 보안의 중요성

    9.2 키클록 사용하기

    9.3 스트라이프 마이크로서비스에 보안 적용하기

    9.4 사용자 인증 획득하기

  10. 마이크로서비스 하이브리드 아키텍처 구성하기

    10.1 카얌베 모노리스

    10.2 카얌베 모노리스 실행하기

    10.3 카얌베 하이브리드 - 마이크로서비스를 사용하는 모노리스

    10.4 하이브리드 클라우드에 전체 전개하기

  11. 아파치 카프카를 이용한 데이터 스트리밍

    11.1 아파치 카프카가 할 수 있는 일은 무엇인가?

    11.2 모노리스 아키텍처를 스트리밍을 사용해 단순하게 만들기 

    11.3 데이터 스트리밍을 위해 카프카 전개하고 사용하기

  12. 부록 스프링 부트 마이크로서비스 

    A.1 스프링 부트 프로젝트 해부도

    A.2 애플리케이션 프로퍼티 설정하기

    A.3 스프링 부트 스타터 의존관계

    A.4 스프링 부트 애플리케이션 개발하기

    A.5 스프링 부트 테스트

목차에서 살펴볼 수 있듯이, 책제목에서부터 등장하는 엔터프라이즈 자바와 마이크로 서비스(와 분산 아키텍처도)에 대한 설명을 진행하며, 책을 설명한다. 다소 쉽지 않은 내용이 등장하지만, 책의 구성이 개념설명 --> 기존의 문제점 --> 그 문제를 해결하기 위한 새로운 개념 --> 사용 방법의 순으로 진행을 하고 있어, 아마 크게 문제없이(단지 갑자기 많은 개념들이 적립되면서, 기억력의 한계가 와서 문제였지만...) 읽어나갈 수 있을 것이다. 사실 이론적인 부분을 아무리 자세히 설명하더라도, 실제 코드(실습을 할 수 있는 환경이라면 더더욱 좋겠지만)를 보지 않고서는 제대로 이해하기 힘들다. 이 책의 장점 중 하나는 책의 예제 파일들도 다운로드하여 참고할 수 있다는 것이다. 사실 책을 보면서 무슨소리지? 했던 부분도 코드를 보면서(단번에 이해가 됐다는 얘기는 아니다) 조금씩 의미를 이해할 수 있었다. 프로그래머는 코드로 말하는 사람이 아니던가?(자신있게 말은 못하겠다... 아닌가?) 또한 내용자체도 어렵지 않다고(?) 느껴졌는데, 앞에서 말했다시피 이미 마이크로서비스 아키텍처라는 도서를 읽었기에, 그 의미를 짐작하고 있어서 그럴지도 모르겠다. 

 

728x90