바로 이동

마이크로서비스 아키텍처란?

마이크로서비스 아키텍처(주로 마이크로서비스라고도 함)란 애플리케이션 개발을 위한 아키텍처 스타일을 의미합니다. 마이크로서비스를 사용하면 대규모 애플리케이션을 각각 담당 영역을 가진 소규모의 독립적인 구성요소로 구분할 수 있습니다. 마이크로서비스 기반 애플리케이션은 단일 사용자 요청을 처리하기 위해 여러 내부 마이크로서비스를 호출하여 응답을 작성할 수 있습니다.

컨테이너는 종속 항목에 대한 걱정 없이 서비스를 개발하는 데 집중할 수 있는 잘 설계된 마이크로서비스 아키텍처 예시입니다. 최신 클라우드 기반 애플리케이션은 일반적으로 컨테이너를 사용하여 마이크로서비스로 빌드됩니다.

Google Kubernetes Engine이 컨테이너를 사용하여 마이크로서비스 기반 애플리케이션을 만드는 데 어떻게 도움이 되는지 알아보세요.

마이크로서비스 아키텍처의 정의

마이크로서비스 아키텍처는 애플리케이션이 서비스 모음으로 개발되는 애플리케이션 아키텍처의 한 유형입니다. 또한 마이크로서비스 아키텍처 다이어그램과 서비스를 독립적으로 개발, 배포, 유지관리할 수 있는 프레임워크를 제공합니다.

마이크로서비스 아키텍처 내에서 각 마이크로서비스는 애플리케이션 기능을 수용하고 개별 작업을 처리하도록 빌드된 단일 서비스입니다. 각 마이크로서비스는 비즈니스 문제를 해결하기 위해 간단한 인터페이스를 통해 다른 서비스와 통신합니다.

마이크로서비스 아키텍처의 용도

일반적으로 마이크로서비스는 애플리케이션 개발 속도를 높이는 데 사용됩니다. 자바를 사용하여 빌드된 마이크로서비스 아키텍처 중에서도 특히 Spring Boot 아키텍처가 일반적입니다. 마이크로서비스와 서비스 지향 아키텍처를 비교하는 것도 일반적입니다. 둘 모두 모놀리식 애플리케이션을 더 작은 구성요소로 세분화하는 것이 목표지만, 접근방식은 서로 다릅니다. 다음은 마이크로서비스 아키텍처의 예시입니다.

웹사이트 마이그레이션

모놀리식 플랫폼에서 호스팅되는 복잡한 웹사이트는 클라우드 기반 및 컨테이너 기반 마이크로서비스 플랫폼으로 마이그레이션할 수 있습니다.

미디어 콘텐츠

마이크로서비스 아키텍처를 사용하여 이미지 및 동영상 애셋을 확장 가능한 객체 스토리지 시스템에 저장하고 웹 또는 모바일에 직접 제공할 수 있습니다.

트랜잭션 및 인보이스

결제 처리 및 주문은 독립적인 서비스 단위로 구분할 수 있으므로 인보이스 발행이 작동하지 않는 경우에도 계속해서 결제가 허용됩니다.

데이터 처리

마이크로서비스 플랫폼은 기존의 모듈형 데이터 처리 서비스를 위해 클라우드 지원을 확장할 수 있습니다.

Google Cloud를 사용할 경우 관리형 컨테이너 서비스인 Google Kubernetes Engine 또는 완전 관리형 서버리스 제품인 Cloud Run을 사용하여 마이크로서비스를 쉽게 배포할 수 있습니다.

사용 사례에 따라 Cloud SQL과 기타 Google Cloud 제품 및 서비스를 손쉽게 통합하여 마이크로서비스 아키텍처를 지원할 수 있습니다.