마이크로서비스 아키텍처 구축 - 대용량 시스템의 효율적인 분산 설계 기법
샘 뉴먼 지음, 정성권 옮김 / 한빛미디어 / 2017년 3월
평점 :
구판절판


대용량 시스템의 미래 : 마이크로 서비스 아키텍처

작고, 한 가지 일을 잘하는데 주력

  책을 받고나서 목차를 살펴봤다. 가장 강하게 나를 끌어당기는 문장이 바로 "작고, 한 가지 일을 잘하는데 주력"이다. 개발을 할때도 이런 말을 들어본적이 있다.  단일 책임의 원칙(객체 지향 프로그래밍에서 단일 책임 원칙이란 모든 클래스는 하나 책임만 가진다.)이라는  SOLID규칙의 하나다. 하나의 서비스를 봤을때도 이런 원칙은 비슷하게 적용될 수 있는 것 같다. 하나의 서비스는 하나의 책임만 가지다. 이런 시선으로 바라볼때 우리의 서비스는 너무 많은 기능과 책임을 가지고 있다. 이런 모놀리스식 시스템의 문제를 해결하고자 나온 분석, 설계 기법이 마이크로 서비스 아키텍처이다. 

 이 책은 마이크로 서비스의 아키텍처를 사례를 들어 설명하고있다. 그런데 그 사례라는 것이 중요하다. 사용자의 요구사항을 처음부터 분석/설계하는 것이 아닌 기존의 모놀리스식 시스템을 분석/재설계하는 예를 보여주고 있다. 시스템을 최초 구축할 때 이런 것들을 고려하여 구축하는게 좋은 설계인지는 모르겠다. 하지만 현재 운영하는 시스템이 너무 비대해져 재설계를 해야할 경우는 충분히 고려해볼만 한 사항이다. 특히나 아마존 웹서비스와 같은 클라우드를 통한 스케일아웃이 간편해진 이때 마이크로서비스 아키텍처는 좋은 대안이라고 생각된다 


방법과 방향을 제시

3챕터- 서비스 모델링하기, 4챕터- 통합, 5챕터- 모놀리스분해- 6챕터- 배포, 7챕터- 테스팅, 8챕터- 모니터링, 9챕터- 보안, 10챕터- 시스템설계

3챕터 부터 실질적인 분석/설계, 배포 및 사후 관리까지 이어지는 실로 엄청난 이야기들을 한다. 사실 한 챕터로 다루기엔 그내용이 어머어마 하다. 한 챕터가 한권의 책으로 나와도 이상하지 않다. 이책은 세세한 기술을 적용하는 기술서적 이라기보다 마이크로 서비스 아키텍처에 관한 이론서이다. 그래서 각 챕터는 포괄적이고도 광범위한 내용을 다루고 있다. 이런 광범위한 내용은 마이크로서비스의 방향을 제시하고 있다. 읽다보면 이런 느낌이 든다. '이거 내가 해봤는데 이렇게 하면 좋아.' 그래서 신뢰가 간다. 또한 특정 오픈소스나 서비스들을 거론 하면서 방법 또한 이야기 해주고 있다. 사실 컴알못인 나는 손에 잡히지 않는 이야기들이 많았지만 그럼에도 불구하고 알만한 오픈소스들의 등장으로 추측은 가능했다. 


컴알못 나의 생각

'마이크로서비스 아키텍처 구축'은 제목 만큼이나 분명한 난이도가 있는 책이다. 그렇다고 꼭 시니어개발자나, PM, 시스템 아키텍터 만 읽을 책은 아니다. 나같은 컴알못 주니어도 읽어두면 큰 도움이된다. 주니어 개발자라면 ͛어보듯이 읽어보길 권한다. 대략적인 이론만 파악을 하라는 것이다. 개발자의 업무가 언듯 분명하게 나뉘어 있는 것 같지만 사실 그 경계가 모호하다. 그런의미에서 지금당장은 쓸모없을 지라도, 다양한 분야의 책을 읽어 두는 것이 좋다. 나는 이 책을 여러번 ͛어읽기를 추천한다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo