Google Cloud 아키텍처 프레임워크의 이 문서에서는 성능 최적화 프로세스를 간략히 설명합니다.
성능 최적화는 일회성 활동이 아닌 연속적인 프로세스입니다. 다음 다이어그램은 성능 최적화 프로세스의 단계를 보여줍니다.
다음은 성능 최적화 프로세스의 단계를 간략하게 보여줍니다.
성능 요구사항 정의
클라우드로 배포하거나 마이그레이션하려는 애플리케이션을 설계하고 개발하기 전에 성능 요구사항을 결정합니다. 프런트엔드 부하 분산, 웹 또는 애플리케이션 서버, 데이터베이스, 스토리지 등 애플리케이션 스택의 각 레이어에 대한 요구사항을 최대한 세부적으로 정의합니다. 예를 들어 스택의 스토리지 레이어인 경우 애플리케이션에 필요한 처리량 및 초당 I/O 작업 수(IOPS)를 변경할 수 있습니다.
애플리케이션 설계 및 배포
성능 요구사항을 충족하는 데 도움이 될 수 있는 탄력적이고 확장 가능한 설계 패턴을 사용하여 애플리케이션을 설계합니다. 탄력적이고 확장 가능한 애플리케이션을 설계하기 위한 다음 가이드라인을 고려하세요.
- 최적의 콘텐츠 배치를 위해 워크로드를 설계합니다.
- 읽기 및 쓰기 트래픽을 격리합니다.
- 정적 및 동적 트래픽을 격리합니다.
- 콘텐츠 캐싱을 구현합니다. 내부 레이어에 데이터 캐시를 사용합니다.
- 관리형 서비스 및 서버리스 아키텍처를 사용합니다.
Google Cloud는 다른 클라우드 플랫폼과 비교하여 Google Cloud 서비스의 성능을 벤치마킹하는 데 사용할 수 있는 오픈소스 도구를 제공합니다.
성능 모니터링 및 분석
애플리케이션을 배포한 후 로그 및 알림을 사용하여 성능을 지속적으로 모니터링하고, 데이터를 분석하고, 성능 문제를 파악합니다. 애플리케이션 성장 및 발전에 따라 성능 요구사항을 다시 평가합니다. 성능을 유지하거나 개선하려면 애플리케이션의 일부를 다시 설계해야 할 수 있습니다.
성능 최적화
애플리케이션 성능 및 요구사항 변화에 따라 현재 성능 요구사항을 충족하도록 Cloud 리소스를 구성합니다. 예를 들어 리소스 크기를 조정하거나 자동 확장을 설정합니다. 리소스를 구성할 때 성능 최적화에 도움이 될 수 있는 최근에 출시된 Google Cloud 기능 및 서비스를 사용할 수 있는 기회를 평가합니다.
성능 최적화 프로세스는 여기에서 끝나지 않습니다. 성능 모니터링 주기를 계속하고 필요에 따라 요구사항을 다시 평가하고, 성능 유지 및 개선을 위해 Cloud 리소스를 조정합니다.