heoh***
2019-09-14

JVM 기반 마이크로서비스 애플리케이션을 설계하고 구축하는 방법을 알려준다. 전통적인 Java EE 애플리케이션과 마이크로서비스 설계를 비교한 후 마이크로서비스를 이루는 각 요소를 설명하는 방식으로 독자의 이해를 돕는다. 이를 바탕으로 마이크로서비스를 구현하는 도구와 기법을 설명한다. 마이크로서비스를 매끄럽게 운용하는 모니터링, 보안, 테스팅, 클라우드 전개 방법도 함께 살펴본다.
이번에 엔터프라이즈 자바 마이크로서비스라는 책에 대해서 리뷰를 하게 되었다
용어부터가 어렵다 "엔터프라이즈 자바" 그렇다면 엔터프라이즈 자바란 무엇인가에 대해서부터 알아보자
엔터프라이즈 자바는 API의 모음과 그 구현을 말한다. API와 구현은 UI로부터 아랫단의 데이터베이스에 이르기까지 웹 서비스를 통해 서로 통신하며 내부 레거시 시스템에 통합된 전체 애플리케이션 스택을 제공한다.
어렵다..... 개발자들이 자신의 분야에 맞는 원하는 기능들을 미리 만들어 놓아 좀더 비지니즈 가치를 제공하는 일에 집중할 수 있도록 만들어 주는 기능을 모아놓은것이라고 생각하면 될것 같다.
가장 많이 사용되는 플랫폼으로는 자바 플랫폼 엔터프라이즈 에디션(Java EE)과 스프링(Spring)이 있다. 엔터프라이즈 자바를 사용하는 대부분의 기업 개발자들은 이 두 프레임워크를 사용한다고 한다
그렇다면 마이크로 서비스란 무엇인가? 마이크로 서비스는 한 프로세스 안에 들어가 실행되는 단일 전개로 구성되며, 비즈니스 기능 중 구체적인 일부분을 충족하기 위해 작동된다.
한 마이크로서비스와 다른 마이크로서비스의 전개와 실행은 완전히 분리된다.
이 책은 2부로 나뉜다. 1부는 1장부터 5장까지 분산시스템과 마이크로서비스의 전반적인 아키텍처를 다루고, 애플리케이션 서버를 가볍게 만드는 것과 테스팅, 클라우드네이티브 개발에 대한 개념을 다룬다
2부는 서비스 레지스트리, 내고장성, 보안 등 마이크로서비스 개발에 관련된 핵심 내용을 설명한다.
Part 1 마이크로서비스 기초
3장은 꼭 필요한 만큼의 애플리케이션 서버라는 개념을 소개하고 그 런타임 시스템을 지원할 때 사용할 수 있는 프레임워크들의 차이를 보여준다.
5장은 클라우드에 대해 이야기하고 다른 클라우드 한경에서 사용 할 수 있는 여러 서비스 모델을 소개한다.
Part2 엔터프라이즈 자바 마이크로서비스 구현
7장은 6장을 확장애서 마이크로 서비스가 사용하고 싶은 외부 마이크로서비스를 찾을때 필요한 기능을 추가한다.
9장에서는 마이크로서비스의 보안에 대해 설명하고 키를록을 통해 보안을 달성하는 방법을 설명한다
10장에서는 카얌베 모노리스를 다시 살펴보면서 변경하지 않은 상태에서 카얌베를 실행 할 수 있는 방법을 보여준다.
총평
이 책의 대상 독자로는 최소 5년 이상 엔터프라이즈 자바 개발 경험이 있는 개발자를 대상으로 한다고 한다. 책이 난이도가 좀 있다 마이크로서비스에 대해 개념과 원리를 이해하고
책을 본다면 수월할수 있을것 같다
기업에서 마이크로 서비스를 구현하는 방법에 대해 알고 싶은 개발자에게는 유용할것이다.
자바 개발자가 마이크로 서비스를 성공적으로 구현하는데 필요한 개념, 패턴, 프레임워크에 대해서 잘 설명하였다