새소식

[5분 내로] 강의실/📋 Spring Cloud MSA란?

[5분 내로] 모놀리식 VS MSA에 대해서 알아보자

728x90

안녕하세요. 팀드모네입니다.

오늘은 MSA의 특징과 함께 모놀리식과 비교해보겠습니다.


- Pattern: Microservice Architecture의 약어

- 작은 서비스 단위로 개발하는 방법

 

- 자체 프로세스에서 실행

- 프로세스 간의 통신은 HTTP기반 API로 통신함

- 비즈니스 기능을 중심으로 개발

- 서비스 배포과 완전 자동화됨

- 다른 프로그래밍 언어로 개발 가능

- 다른 DB를 쓸 수도 있음

 

- 서버 및 프로세스 장애 시 격리 및 복구가 쉬움 (장애는 해당 서비스에 한정하여 발생. 그 서비스만 복구하면 됨)

- 서비스가 작아서 배포가 빠름.

- 서비스가 작아서 코드 수정이 용이. 생산성 향상.

- 신기술 도입이 쉽다.

* MSA를 제대로 이해하기 위해선 모놀리식의 상황이 어떠했는지 알아야한다.

 

 

 

- 서버 및 프로세스 장애로 서비스가 죽었을 경우.. HA(이중화)도입이 안되었다면 그냥 다 죽은 것이다.

- 모놀리식에 신기술을 도입하려면 시스템 전체가 바꿔야한다. (일명, 차세대 프로젝트)

- 서비스가 크기 때문에, 서비스 배포에 20분... 1시간.. 2시간이 걸린다.

- 서비스를 개발할 때 보통 하나의 프로그래밍 언어, 통일된 RDBMS만 사용한다.

* JPA나 작정하고 ANSI 표준으로 SQL를 만드는 특수한 경우는 제외..

 

 

- 아키텍처 상, 필연적으로 데이터 중복이 발생

아키텍처 상, 성능에 민감한 사업에는 도입할 수 없음

 하나의 서비스가 잘게 쪼개져 통신을 하는 것이므로 퍼포먼스 하락이 예측됨

 

따라서, 모놀리식의 거대한 DB를 얼마나 잘 쪼갤 수 있느냐가 MSA프로젝트 성공의 핵심입니다.

추가로 질문사항이 있으시면 댓글 남겨주세요. 감사합니다. 좋은 하루 보내세요~

continue...


reference : https://www.youtube.com/watch?v=UsWrvBaQOA4

광고 링크 : 

 

반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.