메뉴 바로가기 검색 및 카테고리 바로가기

한빛미디어

독자리뷰

[클라우드 네이티브] 리뷰

aim***

|

2020-07-05

클라우드 네이티브

클라우드를 처음 접할 때는 누구나 어려움을 겪는다. 분산 시스템을 배우고 컨테이너와 함수를 익혀야 하며, 어렵지만 이를 한 번에 다루는 방법도 알아야 한다.

  • 저자 : 보리스 숄 , 트렌트 스완슨 , 피터 야우쇼베츠
  • 번역 : 정원천
  • 출간 : 2020-06-13

 

 

 벌써 2-3년 전 일이다. 회사에서 개발하던 제품을 클라우드 서비스를 해보자는 이야기가 나와서 잠깐 설계했던 적이 있다. 하지만 우선순위가 밀려서 설계 도중 프로젝트는 중단되고 다른 작업을 하게 되었다. 그 당시 팀에 클라우드 전문가(?)가 없기도 했고 운영조차 안 해봐서 설계에 많은 어려움이 있었다. 이 책에서는 클라우드 네이티브 애플리케이션을 설계하고 개발하는데 필요한 지식을 전달해준다. 회사에서 다시 클라우드 이야기가 나오면 도움이 되지 않을까 하는 생각에 책을 읽게 되었다.

 현재 담당하는 제품도 크기가 꽤 크다. 책에서 말하는 모놀리식, 레거시 시스템에 가까운 형태이다. 클라우드에 관한 지식이 별로 없었음에도, 설계 당시에 주로 고려했던 내용은 어떻게 서비스 중단 없이, 쉬운 확장성을 갖는 시스템을 만들 수 있을까?라는 것이었다. 그러다 보니 자연스럽게 관리 모듈, 사용자 정보, 테넌트 관리, 제품의 메인 프로세스 모듈, 웹 서비스, 로그 등등을 분리되었다. 그리고 각각의 서비스는 클라우드 서비스 공급업체에서 제공해주는 기능 중 가장 적절한 형태의 것에 배치하려고 했다. 

 클라우드 관련 프로젝트가 중단되었지만 대신 제품 버전 업그레이드를 맡게 되었다. 새로운 기능을 추가하면서 기존에 있던 불필요한 모듈도 제거하고 많은 부분 리팩토링을 진행했다. 클라우드도 아니고 그냥 서버에 설치되는 제품이지만, 한번 클라우드 관련 설계를 해 본 경험이 생겨서인지 구조적으로 개선하고 싶은 부분이 많이 생기기도 했다. 그리고 일부 클라우드 설계 내용을 적용하면 나중에 다시 클라우드 서비스를 개발할 때 좀 더 쉽게 이전이 가능하지 않을까 하는 기대도 있었다.

 처음 설계를 시작하게 되었을 때 가장 힘들었던 부분은, 경험이 없기 때문에 레거시 시스템을 어떻게 분리해서 옮겨야 하는지 전혀 몰랐다는 점이다. 어떻게 보면 다른 서비스 제공 업체에서 어떻게 이전을 설계하고 진행했는지가 궁금했다. 

 이 책에서는 전통적인 구조에서 클라우드 형태의 서비스를 단계별로 설명해준다. 또 서비스를 분리하는 방법과, 데이터의 분리 및 관리, 확장성을 고려하는 부분까지 다루고 있다. 가장 마음에 들었던 부분은 후반부에 모범 사례 챕터였다. 

 입문서로는 조금 어려운 게 아닌가라는 생각이 들기도 했다. 생소한 용어들이 너무 다양하게 나왔는데 그게 바로바로 예시로 소개가 되고 있어서 쉽게 이해되지 않는 부분도 많았다. 그리고 설계라는 게 무척 어려운 부분인데, 많은 내용을 소개해주려고 하다 보니 설명이 부족하다는 생각도 들었다. 하지만 용어에 좀 익숙해지고, 어느 정도 스케치를 해볼 수 있는 만큼 지식 전달은 해주는 것 같다. 항상 강조하는 부분이지만, 나중에 코드로 구현해야 할 시기가 왔을 때 '아 그런 게 있었던 것 같은데, 한번 더 찾아봐야지'라고 떠오르기만 해도 훌륭한 학습을 했다 생각한다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?