[Back-end] 모놀리식 애플리케이션

Geun·2022년 4월 22일
0

Back-end

목록 보기
63/74

모놀리식 아키텍쳐

모놀리식 아키텍쳐(Monolithic Architecture)는 마이크로서비스 아키텍쳐의 반대개념인 전통의 아키텍쳐를 의미한다.
하나의 서비스 또는 애플리케이션이 하나의 거대한 아키텍쳐를 가질 때, 모놀리식(Monolithic)하다고 한다.

특징

모놀리식 아키텍쳐를 가지는 소프트웨어는 그 자체로 강건하고 내부 요소간의 의존성이 강하다.
이것은 구조적인 결합이 강하게 유지되는 결과를 낳으며, 각 비즈니스 컴포넌트들이 하나의 강한 결합 구조를 지니고 통일성이 있다.

비즈니스 로직이 서비스에 최적화된 코드를 만들어내는데 좀 더 집중할 수 있는 반면, 복합적인 예외를 만들 수 있는 위험성을 내포한다.

장점

  • 개발 초기에 단순한 아키텍쳐 구조와 개발에 용이하다.
  • 어떤 서비스든지 개발되어 있는 환경이 같아 복잡하지 않다.
  • 쉽게 고가용성 서버 환경을 만들 수 있다.
  • End-to-End 테스트가 용이하다.

단점

  • 프로젝트의 규모가 커짐에 따라 애플리케이션 구동시간이 늘어나고 빌드, 배포 시간도 길어진다.
  • 자그만 수정사항이 있으면 전체를 다시 빌드하고 배포해야한다.
  • 많은 양의 코드가 몰려있어 개발자가 모두를 이해하기 어렵고 유지보수도 힘들다.
  • 일부분의 오류가 전체에 영향을 미친다.
  • 기능별로 알맞는 기술, 언어, 프레임워크를 선택하기가 까다롭다.

참고자료

https://m.blog.naver.com/dktmrorl/221863498991
https://daaa0555.tistory.com/457
jins-dev.tistory

0개의 댓글