CNF Taxonomies

CNF Taxonomies는 정보를 체계적으로 분류하고 조직화하기 위해 정의된 계층적 분류 체계입니다.

MSA Framework


MSA Framework(마이크로서비스 아키텍처 프레임워크) 는 마이크로서비스 아키텍처(MSA)를 구축하고 운영하기 위한 소프트웨어 프레임워크 및 도구를 의미합니다.
MSA는 애플리케이션을 여러 개의 독립적인 서비스(마이크로서비스)로 나누어 개발·배포·운영하는 방식이므로, 이를 효과적으로 관리하려면 API 게이트웨이, 서비스 디스커버리, 분산 트레이싱, 부하 분산, 보안, 데이터 관리, 자동 배포 등의 기능을 제공하는 프레임워크가 필요합니다.

대표적인 MSA 프레임워크에는 Spring Cloud, Istio, Quarkus, Micronaut, Kubernetes 기반 서비스 메시 등이 있다.

주요 특징

  • 서비스 디스커버리 (Service Discovery): 마이크로서비스의 위치를 동적으로 탐색하고 관리.
  • API 게이트웨이: 클라이언트 요청을 각 마이크로서비스로 라우팅하고 보안/로드 밸런싱 적용.
  • 분산 트레이싱 (Distributed Tracing): 서비스 간 요청 흐름을 추적하여 성능 및 장애 분석.
  • 회로 차단기 (Circuit Breaker): 장애 발생 시 서비스 간 영향 확산을 방지.
  • 보안 및 인증 (Security & Authentication): OAuth2, JWT 등을 활용한 보안 강화.
  • 자동 확장 및 배포: Kubernetes, Docker 기반의 컨테이너 오케스트레이션 지원.

장점

  • 확장성 증가: 특정 서비스만 개별적으로 확장 가능.
  • 고가용성 보장: 특정 서비스 장애 시에도 전체 시스템이 영향을 받지 않도록 설계 가능.
  • 빠른 배포 및 업데이트 가능: 서비스 단위별 독립 배포 가능하여 개발 속도 향상.
  • 다양한 기술 스택 적용 가능: Java, Python, Go 등 다양한 언어 기반의 서비스 개발 가능.
  • 보안 강화: 서비스 간 인증 및 보안 설정 강화 (mTLS, OAuth2, JWT 지원).

관련 용어

  • API Gateway: 클라이언트 요청을 적절한 마이크로서비스로 전달하는 역할 (예: Zuul, Kong, NGINX).
  • Service Discovery: 서비스가 동적으로 변경될 수 있도록 관리하는 기능 (예: Eureka, Consul).
  • Circuit Breaker: 장애 발생 시 서비스 간 영향 확산을 방지하는 패턴 (예: Hystrix, Resilience4j).
  • Service Mesh: 서비스 간 네트워크 트래픽을 관리하는 계층 (예: Istio, Linkerd).
  • Container Orchestration: 컨테이너 기반 마이크로서비스를 관리하는 시스템 (예: Kubernetes).

주요 솔루션 및 사용 사례

  • 주요 솔루션
    • Spring Cloud: 마이크로서비스 개발을 위한 Java 기반 프레임워크.
    • Istio: Kubernetes 기반의 서비스 메시 솔루션.
    • Kubernetes: 컨테이너 오케스트레이션 플랫폼.
    • Quarkus: 클라우드 네이티브 환경을 위한 경량 자바 프레임워크.
    • Micronaut: 서버리스 및 클라우드 네이티브 애플리케이션을 위한 경량 프레임워크.
  • 사용 사례
    • 대규모 SaaS 애플리케이션: 독립적인 마이크로서비스로 확장 가능.
    • 금융 시스템: 높은 보안 요구사항을 충족하면서 유연한 배포 가능.
    • 이커머스 플랫폼: 주문, 결제, 배송 등의 기능을 각각의 마이크로서비스로 운영.
    • 스트리밍 서비스: 영상 전송, 추천 시스템, 인증 등을 분리하여 확장 가능.
    • DevOps 및 CI/CD 파이프라인 통합: 마이크로서비스별 개별 배포 자동화

Go to Top