본문 바로가기

클라우드/쿠버네티스(Kubernetes)

모놀리식 아키텍처 / 마이크로 서비스 아키텍처

모놀리식 아키텍처

모놀리식(Monolithic) 아키텍처 (레거시 시스템- 예전 방식)

논리적으로 분리 된 가능을 하나의 어플리케이션으로 구성

 

장점

-> 간단한 개발

-> 간편한 배포

-> 단순한 확장성

 

단점

-> 개발 주기가 길다

-> 하나의 시스템만 확장할 수 없다

-> 하나의 언어로만 만들 수 있다 (언어의 약점을 해결할 수 있는 방법이 없다)

 

마이크로서비스 아키텍처

기능을 분리

컴포넌트와 컴포넌트간의 통신

RESTful API (동기 방식)/AMQP(Message Queue) (비동기 방식)

동기 방식

게시판에서 게시물을 올린다

버튼 클릭 ->DB 저장 -> 저장완료라는 COMMIT메세지 -> 게시물이 올라감

비동기 방식

게시물이 올라갈 때 다른것을 할 수 있다

 

장점

-> 각 기능별로 다른 언어 사용 가능

-> 해당되는 기능만 확장 가능

 

단점

-> 통이 비효율적

-> 어플리케이션 성능 모니터링