초오오오오오짜개발자의낙서장
MSA - 개요 본문
monolithic architecture
- 모든 업무 로직이 하나의 애플리케이션 형태로 패키징 되어 서비스
- 대부분의 기본 프로젝트 형태
- 서비스 초기에 빠른 개발이 가능 , 소규모에 적합
- 개발, 빌드, 테스트, 배포등에 용이
- 서비스가 거대해 질수록 코드 전체를 이해하는 사람이 적어짐.
- 수정과 빌드 배포가 서비스가 커저감에 따라 어려워지고 일정도 길어짐.
위와 같은 문제를 해결하기위해 Devide and Conquer 처럼 하나의 큰 어플리케이션을 작은 어플리케이션으로 쪼개어 변경과 조합이 가능하도록 만든 개념이 MSA(micro service architecture)
- 각각의 서비스는 독립적으로 배포
- 각각의 서비스는 다른 서비스에 대한 의존성이 최소화
- 각 서비스는 개별 프로세스로 구동, REST 통신