Google Cloud Well-Architected Framework의 성능 최적화 요소 원칙은 성능을 지속적으로 모니터링하고 개선하는 데 도움이 되는 권장사항을 제공합니다.
애플리케이션을 배포한 후 로그, 추적, 측정항목, 알림을 사용하여 성능을 지속적으로 모니터링합니다. 애플리케이션이 성장하고 발전함에 따라 이러한 데이터 포인트의 추세를 사용하여 성능 요구사항을 다시 평가할 수 있습니다. 성능을 유지하거나 개선하려면 애플리케이션의 일부를 다시 설계해야 할 수 있습니다.
원칙 개요
지속적인 성능 개선 프로세스에는 강력한 모니터링 도구와 전략이 필요합니다. 클라우드 관측 가능성 도구를 사용하면 지연 시간, 처리량, 오류율, 리소스 사용률과 같은 핵심성과지표 (KPI)를 수집할 수 있습니다. 클라우드 환경은 애플리케이션, 네트워크, 최종 사용자 환경 전반에서 세부적인 성능 평가를 수행할 수 있는 다양한 방법을 제공합니다.
성능 개선은 다각적인 접근 방식이 필요한 지속적인 노력입니다. 다음 주요 메커니즘과 프로세스를 통해 성능을 향상할 수 있습니다.
- 명확한 방향을 제시하고 진행 상황을 추적하려면 비즈니스 목표에 부합하는 실적 목표를 정의하세요. 구체적이고(Specific), 측정 가능하고(Measurable), 달성 가능하고(Achievable), 관련성이 있으며(Relevant), 기한이 정해진(Time-bound) SMART 목표를 설정하세요.
- 실적을 측정하고 개선이 필요한 영역을 파악하려면 KPI 측정항목을 수집하세요.
- 문제가 있는지 시스템을 지속적으로 모니터링하려면 모니터링 도구에서 시각화된 워크플로를 사용하세요. 아키텍처 프로세스 매핑 기법을 사용하여 중복과 비효율성을 식별합니다.
- 지속적인 개선 문화를 조성하려면 직원의 성장을 지원하는 교육과 프로그램을 제공하세요.
- 선제적이고 지속적인 개선을 장려하려면 직원과 고객이 애플리케이션 성능에 관한 지속적인 피드백을 제공하도록 인센티브를 제공하세요.
권장사항
모듈식 설계를 촉진하려면 다음 섹션의 권장사항을 고려하세요.
명확한 성능 목표 및 측정항목 정의
비즈니스 목표에 부합하는 명확한 성능 목표를 정의합니다. 이를 위해서는 애플리케이션 아키텍처와 각 애플리케이션 구성요소의 성능 요구사항을 깊이 이해해야 합니다.
우선순위에 따라 핵심 비즈니스 기능과 사용자 환경에 직접적인 영향을 미치는 가장 중요한 구성요소를 최적화하세요. 이러한 구성요소가 계속해서 효율적으로 실행되고 비즈니스 요구사항을 충족하도록 하려면 구체적이고 측정 가능한 실적 타겟을 설정하세요. 이러한 타겟에는 응답 시간, 오류율, 리소스 사용률 기준점이 포함될 수 있습니다.
이러한 사전 대응적 접근 방식을 통해 잠재적인 병목 현상을 식별하고 해결하며, 리소스 할당을 최적화하고, 궁극적으로 사용자에게 원활하고 고성능의 환경을 제공할 수 있습니다.
실적 모니터링
클라우드 시스템의 성능 문제를 지속적으로 모니터링하고 잠재적인 문제에 대한 알림을 설정합니다. 모니터링 및 알림을 사용하면 문제가 사용자에게 영향을 미치기 전에 문제를 포착하고 해결할 수 있습니다. 애플리케이션 프로파일링은 병목 현상을 식별하고 리소스 사용을 최적화하는 데 도움이 될 수 있습니다.
효과적인 문제 해결 및 네트워크 최적화를 지원하는 도구를 사용할 수 있습니다. Google Cloud Observability를 사용하여 CPU 소비, 메모리 소비 또는 네트워크 소비가 높은 영역을 식별합니다. 이러한 기능을 통해 개발자는 효율성을 개선하고, 비용을 절감하고, 사용자 환경을 개선할 수 있습니다. Network Intelligence Center는 네트워크 인프라의 토폴로지를 시각화하여 보여주며, 지연 시간이 긴 경로를 식별하는 데 도움이 됩니다.
지속적인 개선 장려
애플리케이션과 사용자 환경 모두에 도움이 되는 지속적인 개선 문화를 만드세요.
직원에게 클라우드 서비스 전반의 성능 기술에 대한 기술과 지식을 향상할 수 있는 교육 및 개발 기회를 제공하세요. 실무 커뮤니티 (CoP)를 구축하고 직원 성장을 지원하기 위한 멘토링 및 코칭 프로그램을 제공합니다.
사후 대응 성과 관리를 방지하고 사전 대응 성과 관리를 장려하려면 직원, 고객, 이해관계자로부터 지속적인 피드백을 받으세요. 실적에 대한 KPI를 추적하고 리그 테이블 형식으로 이러한 측정항목을 팀에 자주 표시하여 프로세스를 게임화하는 것을 고려해 볼 수 있습니다.
시간이 지남에 따라 실적과 사용자 만족도를 파악하려면 사용자 의견을 정량적 및 정성적으로 측정하는 것이 좋습니다. HEART 프레임워크는 다음 다섯 가지 카테고리에 걸쳐 사용자 의견을 수집하는 데 도움이 됩니다.
- 행복
- 참여
- 채택 현황
- 보관
- 작업 성공
이러한 프레임워크를 사용하면 데이터 기반 피드백, 사용자 중심 측정항목, 실행 가능한 통계, 명확한 목표 이해를 통해 엔지니어에게 인센티브를 제공할 수 있습니다.