엔터프라이즈 자바 마이크로서비스
연구이야기/도서이야기☆

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

2019년 7월에 출간된 <엔터프라이즈 자바 마이크로서비스>에 대해 살펴보겠습니다. 약 1년전 한빛미디어에서 출간한 책이며, 최근에 시장에서 많은 관심을 받고 있는 마이크로서비스에 관한 책입니다. 

이 책은 Thorntail(https://thorntail.io/) 프로젝트를 이끌고 있는 켄 피니건(Ken Finnigan)이 작성했으며, 번역은 오현석 님께서 맡아주셨습니다. 바로 이전 책의 번역도 오현석 님께서 맡아 주셨는데, 인연이 있는 듯 합니다.

<엔터프라이즈 자바 마이크로서비스>는 약 300여 페이지로 구성된 책이며, 휴대하며 읽기에 큰 부담은 없습니다. 종이와 편집의 품질은 만족스럽지만, 종이가 너무 얇아 뒷장이 비치는 부분은 아쉽습니다. 글을 읽을 때 뒷장의 글씨가 겹쳐 보여 가독성이 좋지 않습니다.  

한빛미디어에서 기획하고 추진하는 한빛리더스 프로그램에 참여하며 작성한 글입니다. 

이 책에서 다루는 내용은?

MicroProfile은 여러 런타임에서 애플리케이션 이식성을 제공하는 마이크로서비스를 구성하는 JavaEE API 및 기술 모음 스펙의 모음집입니다. MicroProfile 최신 버전은 2020년 2월 18일에 발표된 3.3이며, 2020년 6월에 발표된 Thorntail 2.7.0.Final 버전에서 MicroProfile 3.3을 공식적으로 지원합니다. 관련 주요 사항은 다음 링크(https://wiki.eclipse.org/MicroProfile/Implementation)에서 자세히 살펴보실 수 있습니다.

스프링 부트에서 제공하는 스타터 도구처럼 https://thorntail.io/generator/ 에서 프로젝트를 구성하는 프로젝트 골격을 만들 수 있습니다. 이때 JavaEE는 물론 MicroProfile, Hibernate, Fault tolerance, Security 등의 다양한 자바 세상의 기술들을 선택하여 프로젝트를 생성할 수 있습니다. 

이 책은 마이크로서비스 환경에서의 테스트 방법, 클라우드 환경을 기반으로 한 개발 방법, 마이크로서비스 개발 및 필요한 요소에 대한 안내 등을 다루고 있어 마이크로서비스에 대해 학습할 때 많은 부분에서 도움을 얻을 수 있는 책이라고 생각합니다. Thorntail도 Netflix의 마이크로서비스 프로젝트를 활용하고 있습니다. Netflix에서 유지보수 중단을 결정한 이후 다른 대안으로 이전할 노력을 기울이고 있다고 하여 더 믿음을 주는 프로젝트라고 생각합니다.

<엔터프라이즈 자바 마이크로서비스>는 각 장마다 연습문제를 제공하고 있습니다. 꼼꼼하게 이 문제들을 해결한다면 Thorntail 활용에 조금 더 가까이 다가갈 수 있을 것 같습니다.

마치면서

<엔터프라이즈 자바 마이크로서비스>는 2부로 구성되어 있습니다. 1부터 1~5장까지 분산시스템과 마이크로서비스의 전반적인 아키텍처를 다루고 있으며, 애플리케이션 서버를 만드는 방법과 테스팅, 클라우드 네이티브 개발에 대한 개념을 소개합니다. 2부는 서비스 레지스트리, 내고장성, 보안 등 마이크로서비스 개발에 관련된 핵심 내용을 설명하는 것으로 구성되어 있습니다.

<엔터프라이즈 자바 마이크로서비스>을 활용하여 MicroProfile 3.3을 공식적으로 지원하는 Thorntail 프레임워크에 대한 맛을 보실 수 있습니다. 비록 Thorntail에 의존적으로 구성된 책이지만, 이 책을 통해 Microservices에 대한 통찰력을 얻을 수 있을 것으로 생각됩니다. 

이 책에서 다루는 Thorntail 프레임워크에 대해서는 이 책을 통해 처음 마주했는데, 꽤 매력적인 프레임워크로 생각합니다. 이번 기회로 Thorntail에 대해 알게 되었고 매력적인 프레임워크로 생각되어 지속적으로 관심을 갖고 살펴보려 합니다.