마이크로서비스 아키텍처(Microservices Architecture)

김지혜·2023년 8월 17일
0

Node.js

목록 보기
12/13
post-custom-banner

마이크로서비스 아키텍처(Microservices Architecture)

마이크로서비스:
하나의 큰 애플리케이션을 여러 개의 다른 역할을 수행하는 애플리케이션으로 분리하였을 때 각 애플리케이션

  • 장점:
    • 민첩하게 대응 가능하다.
    • 관리하기 용이하다.
    • 서비스 단위 테스트도 쉽다.
    • 쉽게 배포가 가능 하다.
    • 경제적이고 정확한 시스템 확장이 가능하다.
  • 단점:
    • 업무를 정확하게 분리 하기 어렵다.
    • 분산 시스템 설계가 어렵고, 코딩이 복잡하다.

마이크로서비스 아키텍처:
마이크로서비스를 분리하여 여러 개의 작은 애플리케이션으로 쪼개어 변경과 조합이 가능하도록 만든 아키텍처

  • 애플리케이션을 특화된 기능별로 나누게 되면 자연스럽게 애플리케이션의 추상화(abstraction)가 가능해진다.

    • EX. 인증 서비스의 구체적인 구현 내용을 모르더라도 다른 서비스에서의 인터페이스를 이용해 인증 과정 수행 가능
      -> 해당 API를 유지한 상태에서 세부적인 구현내용을 언제든지 손쉽게 개선하고 변경
  • REST API의 일반화, 도커(Docker)와 같은 컨테이너 기술, 클라우드 컴퓨팅 환경의 발전 등에 따라 발전

모놀리식 아키택처


모놀리식 아키텍처(Monolithic Architecture):

  • 소프트웨어 프로그램의 전통적인 모델
  • 자체 포함 방식이며 다른 애플리케이션과 독립적인 통합된 유닛으로 구성된 아키택처

마이크로서비스 아키텍처(Microservice Architecture):

  • 하나의 큰 애플리케이션을 여러 개의 작은 서비스 유닛으로 쪼개어 변경과 조합이 가능하도록 만든 아키텍처

참고 사이트

  1. GURUBLE BLOG
    http://guruble.com/%EB%A7%88%EC%9D%B4%ED%81%AC%EB%A1%9C%EC%84%9C%EB%B9%84%EC%8A%A4microservice-%EC%95%84%ED%82%A4%ED%85%8D%EC%B2%98-%EA%B7%B8%EA%B2%83%EC%9D%B4-%EB%AD%A3%EC%9D%B4-%EC%A4%91%ED%97%8C%EB%94%94/
  2. https://freeend.tistory.com/115
  3. https://www.atlassian.com/ko/microservices/microservices-architecture/microservices-vs-monolith
post-custom-banner

0개의 댓글