![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvScLS%2FbtsDJWyCmPY%2FtCMAJhYKLchpFM6Z1kXIT1%2Fimg.png)
필자는 Back-End를 공부하는 입장에서 어떻게 하면 구조를 좋게 잡을지 고민이 많았다. 기존에는 하나의 프로그램에 모든 기능을 넣어서 실행하는 방식으로 진행해왔다. 실제로 프로젝트를 진행하면서 윗 줄의 내용처럼 진행을 하니, 한쪽에서 문제가 생겨 프로그램이 죽는다면 다른 모든 기능들을 사용할 수 없게 된다. 추가적으로 프로젝트의 규모가 조금씩 커지면서, 유지보수를 할 때 연관되어있는 부분이 있다면 함께 수정해야되서 비교적 까다로웠다. 그래서 프로그램을 개발할 때, 어떻게 구조를 가져가면 좋을지 알아보던 중, MSA라는 아키텍쳐를 알게 되었다. 그래서 이번에 MSA에 대해서 알게된 것, 기존 프로그램의 방식과의 차이점이 무엇인지 알아보려고 한다. 기존의 프로그램 구조, 모놀리식(Monolithic) ..