패스잇
시스템 설계 · 중급

마이크로서비스 아키텍처와 모놀리식 아키텍처의 장단점을 비교해주세요.

힌트 · 배포 독립성, 서비스 간 통신 복잡도, 팀 규모, 데이터 일관성 측면에서 비교해보세요.

독립적 배포확장성복잡성 증가단일 장애점기술 스택 다양성

모범답안

마이크로서비스 아키텍처와 모놀리식 아키텍처는 각각 장단점이 뚜렷합니다.

모놀리식 아키텍처는 개발 초기 단계에 간단하게 구축하고 배포하기 용이합니다. 모든 코드가 하나의 저장소에 있고, 단일 프로세스로 실행되므로 개발 및 테스트가 비교적 간단합니다. 하지만 애플리케이션 규모가 커질수록 빌드 및 배포 시간이 길어지고, 특정 부분의 장애가 전체 시스템에 영향을 줄 수 있다는 단점이 있습니다. 또한, 기술 스택을 변경하기 어렵고, 특정 기능 확장을 위해 전체 시스템을 확장해야 하는 비효율성이 발생할 수 있습니다.

반면, 마이크로서비스 아키텍처는 각 서비스를 독립적으로 개발, 배포, 확장할 수 있어 유연성이 높습니다. 특정 서비스에 장애가 발생해도 다른 서비스에는 영향을 주지 않아 안정성이 높습니다. 또한, 각 서비스에 적합한 기술 스택을 선택할 수 있어 기술 다양성을 확보할 수 있습니다. 하지만 서비스 간 통신이 복잡해지고, 분산 시스템의 복잡성을 관리해야 하며, 데이터 일관성을 유지하기 어렵다는 단점이 있습니다. 초기 구축 비용이 높고, 서비스 간 통신 및 관리를 위한 인프라 구축이 필요합니다. 팀 규모가 커지고 서비스가 많아질수록 운영 복잡성이 증가합니다. 따라서 프로젝트의 규모, 복잡성, 팀 규모 등을 고려하여 적절한 아키텍처를 선택해야 합니다.

읽었다면, 이제 직접 답해볼 차례예요

패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.

함께 보는 시스템 설계 면접 질문

← 시스템 설계 면접 질문 전체 보기