Micro
                   작은
Service
                   서비스
Architecture
                   설계방식

 

말그대로 아주 작은 서비스를 말한다.
큰 몸뚱이 하나를 잘게 쪼개는 것이다. 
단순하게 잘게 쪼개기만 하는것은 아니다.
각각 쪼개진 것들이 혼자서도 잘 돌아 가야한다.

모놀리틱(Monolithic) 아키텍처라고 하는게 기존 큰 몸뚱이 구조라고 할 수 있다.
이 구조에서는 보통 기능들이 서로서로 얽혀있어 결합력이 뛰어나기 때문에
로직,코드 등 무엇인가가 바뀐다면? 그에 영향을 받는것이 많아지게 된다.
당연히 몸뚱이가 크면 클수록 복잡성이 더 커질 것이고,
이 말은 작은 기능하나 추가하는 것도 어려운 상황이 될 수도 있다는 것이다.

잘 만들어진 마이크로 서비스 아키텍처에서는 어떨까?
앞에서 말한것처럼 각 쪼개진 서비스들은 혼자서 잘 돌아 간다는 것이 중요하다.
애초부터 다른 서비스 상관없이 잘 돌아가는 구조로 만들어져 있다면
어떤 기능이 추가되더라도 그 대상 서비스만 영향을 미치게 될 것이다.

먹는걸로 예를 들어볼까

----- 모놀리틱 아키텍처 식당 -----
코스가 나오는 식당이라고 해보겠다.

코스는
    에피타이저
    메인
    디저트
    음료
4개의 구성으로 되어있다.
하나의 코스안에 각 메뉴의 맛이 서로 얽혀 있는 구조.

 
코스의 모든 메뉴는 다 따로 노는 것이 아니다 쉐프가 원하는 맛의 흐름이 있다.
(헛소리 죄송합니다. 예를 들다보니..)

----- 마이크로 서비스 아키텍처 식당 -----
에피타이저 가게
메인메뉴 가게
디저트 가게
음료 가게

각각의 가게가 따로 잘 돌아간다.

 

개발자로 일하기 시작한지 만 3년이 조금 더 넘었다.

 

빅데이터에 꽂혀서 취업을 헤매다 좋은 회사에서 함께하고 있다.

많이 많이 배우는 중이다.

 

몇달전 MSA 프로젝트에 참여할 기회가 생겼고, 

나름 열심히 준비했고

현재 프로젝트 진행중에도 배울껀 산더미라는걸 느끼고 있다.

 

MSA는 굉장히 어렵다.

공부했던 것들 다시 봐야할 일이 많고

하면서도 내 머릿속에서 정리가 안되는 것 같다.

 

그래서

지난 3년넘도록 생각했던 블로그 좀 해야지해야지 생각하던걸

 

드디어 시작해본다.

 

 

+ Recent posts