도서/IT 도서

마이크로서비스를 알아보았다!, 엔터프라이즈 자바 마이크로서비스

Chipmunks 2020. 7. 5.
728x90

 


'마이크로서비스'란 정확히 어떤 개념인지 궁금하기도 했고 '엔터프라이즈 자바'도 무엇인지 궁금해서 '엔터프라이즈 자바 마이크로서비스' 도서를 집어서 보게 되었습니다.

책이 제수준에는 어려워 끝까지 읽진 못하고 클라우드 네이티브 장까지만 보고 리뷰를 남기려고 합니다.


마이크로서비스는 반대 개념인 '모노리스'의 단점을 해결하기 위해 등장했는데요.

모노리스와 마이크로서비스 개념 설명은 첫 장부터 깔끔한 전개로 저의 첫 궁금증을 해소시켰습니다.

엔터프라이즈 자바란 무엇이고 전형적인 엔터프라이즈 자바의 아키텍처, 모노리스의 설명과 장점과 그 문제점들, 마이크로서비스와 분산 아키텍처의 개념과 등장 배경, 왜 도입해야 하는지 장단점들을 소개한다.


또 마이크로서비스를 만드는데 있어 엔터프라이즈 자바를 써야하는 이유도 서술한다.

하나 하나 자세한 설명으로 '왜'를 포인트로 잡아 글을 전개하는 방식이 마음에 들었다.



Java EE API 안의 REST API 구현을 지원하는 JAX-RS를 예제 프로젝트로 이용했다.

얼마 전에 스프링으로 바로 시작을 해서 JAX-RS API가 낯설기는 했지만 스프링도 Java EE 표준 명세를 따르기 때문인지 몇몇 부분을 제외하고는 금방 코드를 이해할 수 있었다.

( 3장 중간에 스프링 부트를 활용한 마이크로서비스 예제도 나오긴 한다. )


그러나 책에서는 마이크로서비스를 어떻게 하면 잘 만들 것인지에 집중하기 때문에 Java EE 안에 어떤 모듈들이 있으며 JAX-RS에 지원하는 기능들을 자세히 소개하지는 않는다.

소스 코드에 세세한 설명이 담겨있긴 하지만...

RESTful API를 만들어보는 두 번째 장부터 모르는 부분이 있다면 따로 공식 문서를 참고해야 한다.



마이크로서비스들을 만들었으면 그에 대한 테스트 코드는 어떻게 작성해야 하는지도 한 챕터에 할애했다. 마이크로서비스 관점에서 단위 테스트와 통합 테스트는 무엇인지 설명하고 직접 테스트 코드를 만들어 확인한다.



5장부터는 본격적으로 클라우드를 소개하고 마이크로서비스를 배포하는 방법을 다룬다.

IaaS, PaaS, SaaS 서비스 모델을 소개하고 클라우드 개발을 왜 해야 하는지를 처음에 설명하고 직접 클라우드에 전개하는 법을 그림과 함께 상세하게 풀어나갔다.


생소한 용어와 생소한 배포 프로그램들도 많고 설정법도 있었지만 어떤 식으로 클라우드에 마이크로서비스를 전개하는지 대충 경험해볼 수 있었다.



남은 뒷 부분은 마이크로서비스들이 서로 호출해 상호작용해보는 경험을 해보고, 모니터링 전략과 보안, 하이브리드 아키텍처, 아파치 카프카를 이용한 데이터 스트리밍, 스프링 부트 마이크로서비스 예제 프로젝트를 경험해본다.


중간까지밖에 읽어보지 않았지만 뒷 장에도 흥미로운 주제가 많아 꼭 완독해보고 싶은 도서다.

엔터프라이즈 자바와 마이크로서비스란 개념에 생소해도 자세한 설명이 뒷받침되어있어 초보자도 충분히 도전해볼 만한 도서인 것 같다.

댓글