리소스를 모니터링하여 예상 성능을 제공하는지 확인 - 성능 효율성 원칙

리소스를 모니터링하여 예상 성능을 제공하는지 확인

시스템 성능은 시간이 지남에 따라 저하될 수 있습니다. 시스템 성능을 모니터링하여 성능 저하 상태를 식별하고 운영 체제 또는 애플리케이션 로드와 같은 내부 또는 외부 요인을 해결합니다.

성능 관련 지표 기록: 모니터링 및 관찰 서비스를 사용하여 성능 관련 지표를 기록합니다. 예를 들어 데이터베이스 트랜잭션, 속도가 느린 쿼리, I/O 지연 시간, HTTP 요청 처리량, 서비스 지연 시간 또는 기타 주요 데이터를 기록할 수 있습니다.

워크로드에 중요한 성능 지표를 확인하여 기록합니다. 워크로드의 전반적인 성능이나 효율성에 영향을 미치는 구성 요소를 파악하려면 이 데이터가 필요합니다.

고객 경험을 바탕으로 중요한 지표를 식별하십시오. 각 지표에 대해 목표, 측정 방식 및 우선 순위를 정합니다. 이러한 지표를 사용하여 성능 관련 문제를 사전에 해결할 수 있도록 경보와 알림을 작성합니다.

이벤트 또는 인시던트 발생 시의 지표 분석: 이벤트나 인시던트에 대응하는 과정에서 모니터링 대시보드나 보고서를 사용해 이벤트/인시던트의 영향을 파악하고 진단합니다. 이러한 대시보드나 보고서에서는 예상 성능을 제공하지 못하는 워크로드의 부분을 파악할 수 있습니다.

아키텍처에 중요한 사용자 사례를 작성할 때는 중요한 각 사례에 필요한 실행 속도를 지정하는 등의 성능 요구 사항을 포함합니다. 이러한 중요 사례의 경우 스크립트로 작성된 사용자 여정을 구현하여 이러한 사례의 성능이 요구 사항에 부합하는지 확인합니다.

워크로드 성능을 측정하는 KPI(핵심 성능 지표) 설정: 워크로드가 예상 성능을 제공하는지 여부를 나타내는 KPI를 식별합니다. 예를 들어 API 기반 워크로드에는 전체 응답 지연 시간을 전반적인 성능의 지표로 사용할 수 있으며, 전자상거래 사이트에는 구매 건 수를 KPI로 사용하도록 선택할 수 있습니다.

고객이 요구하는 성능 경험 및 고객이 워크로드의 성능을 판단하는 근거를 문서화합니다. 이러한 요구 사항을 토대로 하여 시스템의 전반적인 성능을 표시하는 KPI(핵심 성과 지표)를 설정합니다.

모니터링을 사용하여 경보 기반 알림 생성: 정의한 성능 관련 KPI를 사용하여 측정값이 예상 경계를 벗어나는 경우 경보를 자동으로 생성하는 모니터링 시스템을 사용합니다.

Amazon CloudWatch는 아키텍처의 리소스 전반에서 지표를 수집할 수 있습니다. 또한 사용자 지정 지표를 수집하고 게시하여 비즈니스 또는 파생 지표를 파악할 수도 있습니다. CloudWatch 또는 서드파티 모니터링 서비스를 사용하여 임계값이 초과되었음을 나타내는 경보를 설정합니다. 이 경보는 지표가 필요한 경계를 벗어났음을 나타냅니다.

정기적인 간격으로 지표 검토: 주기적인 유지 관리의 일환으로 또는 이벤트나 인시던트 대응 과정에서 수집된 지표를 검토합니다. 이러한 검토를 수행하면 문제를 해결하는 데 반드시 필요했던 지표와 문제를 확인/해결/방지하는 데 도움이 되었던 지표(추적한 경우)를 추가로 파악할 수 있습니다.

인시던트나 이벤트 대응의 일환으로 문제를 해결하는 데 도움이 되었던 지표와, 현재는 추적 중이지 않지만 도움이 되었을 수 있는 지표를 평가합니다. 이 평가 결과를 토대로 하여 수집한 지표의 품질을 개선하면 이후 인시던트를 예방하거나 더 빨리 해결할 수 있습니다.

사전 모니터링 및 경보 생성: KPI(핵심 성능 지표)를 모니터링 및 경보 시스템과 함께 사용하여 성능 관련 문제를 선제적으로 해결합니다. 경보를 사용하여 가능한 경우 문제를 해결하는 자동화 작업을 트리거합니다. 자동 대응이 불가능한 경우 대응을 수행할 수 있는 담당자에게 경보를 에스컬레이션합니다. 예를 들어 필요한 KPI(핵심 성과 지표) 값을 예측하고 해당 값이 특정 임계값을 초과하는 경우 경보를 생성할 수 있는 시스템이나, KPI가 필요한 값의 범위를 벗어나는 경우 배포를 자동으로 중지하거나 롤백할 수 있는 도구가 있습니다.

워크로드가 실행 중일 때 성능을 확인할 수 있는 프로세스를 구현합니다. 워크로드가 최적의 상태로 작동하고 있는지를 확인할 수 있도록 성능 기대치 관련 기준을 설정하고 모니터링 대시보드를 구축합니다.