MSA란 무엇일까?

2026. 6. 25. 14:38·MSA

1. Microservices Architecture (MSA)

  • MSA는 하나의 애플리케이션을 여러 개의 독립적인 서비스로 분리하여 개발, 배포, 유지보수를 용이하게 하는 소프트웨어 아키텍처 스타일이다.
  • 각 서비스는 특정 비즈니스 기능을 수행하며, 서로 독립적으로 배포되고 확장될 수 있다.
  • 서비스 간의 통신은 주로 HTTP/HTTPS, 메시지 큐(Message Queue) 등을 통해 이루어진다.

2. 주요 특징?

  • 독립적인 배포 가능: 각 서비스는 독립적으로 배포할 수 있으며, 다른 서비스에 영향을 주지않고 업데이트가 가능하다.
  • 작은 팀 구성: 각 서비스는 작은 팀이 독립적으로 개발하고 관리할 수 있다.
  • 기술 스택의 다양성: 각 서비스는 적절한 기술 스택을 자유롭게 선택할 수 있다.

 

3. 장단점?

장점

  • 확장성: 특정 서비스만 확장하여 성능 최적화가 가능하다.
  • 독립적 배포: 개별 서비스의 변경 사항을 독립적으로 배포할 수 있다.
  • 유연성: 서비스별로 적합한 기술 스택을 선택할 수 있다.
  • 작은 팀 구성: 서비스별 작은 팀으로 구성하여 민첩한 개발이 가능하다.

단점

  • 복잡성 증가: 서비스 간 통신, 데이터 일관성 유지 등의 복잡성이 증가한다.
  • 운영 비용 증가: 각 서비스의 모니터링, 로깅 등을 개별적으로 관리해야 한다.
  • 데이터 관리: 분산된 데이터베이스로 인해 데이터 일관성 유지가 어려울 수 있다.
  • 네트워크 지연: 서비스 간 통신이 네트워크를 통해 이루어지므로 지연 시간이 발생할 수 있다.

 

'MSA' 카테고리의 다른 글

API 게이트웨이 (Spring Cloud Gateway)  (0) 2026.06.27
서킷 브레이커 (Resilience4j)  (0) 2026.06.27
로드 밸런싱  (0) 2026.06.26
서비스 디스커버리 (Eureka) 와 Server/Client 설정 방법  (0) 2026.06.26
Spring Cloud란 무엇일까?  (0) 2026.06.25
'MSA' 카테고리의 다른 글
  • 서킷 브레이커 (Resilience4j)
  • 로드 밸런싱
  • 서비스 디스커버리 (Eureka) 와 Server/Client 설정 방법
  • Spring Cloud란 무엇일까?
taeyoon2
taeyoon2
taeyoon2 님의 블로그 입니다.
  • taeyoon2
    taeyoon2 님의 블로그
    taeyoon2
  • 전체
    오늘
    어제
    • 분류 전체보기 (36)
      • 심화_AI를 활용한 백엔드 아키텍처 심화 과정 (24)
      • MSA (11)
      • Study (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    api gateway
    내일배움캠프 #사전캠프 #til
    OAuth2
    Resilience4j
    서킷 브레이커
    MSA
    JWT
    RabbitMQ
    spring cloud config
    Config
    사전캠프
    이벤트 드리븐
    로드 밸런싱
    분산추적
    spring cloud
    심화_AI를 활용한 백엔드 아키텍처 심화 과정
    내일배움캠프
    Zipkin
    til
    보안구성
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
taeyoon2
MSA란 무엇일까?
상단으로

티스토리툴바