PERF02-BP06 Evaluar constantemente las necesidades de computación según las métricas
Utilice un enfoque basado en datos para evaluar y optimizar continuamente los recursos de computación para su carga de trabajo a lo largo del tiempo.
Resultado deseado: use métricas en el nivel del sistema para supervisar activamente el comportamiento y los requisitos de su carga de trabajo a lo largo del tiempo. Evalúe las demandas de su carga de trabajo frente a los recursos disponibles basándose en los datos recopilados y realice cambios en su entorno de computación para adaptarlo mejor al perfil de su carga de trabajo. Por ejemplo, podría observar que, con el tiempo, una carga de trabajo exige más memoria que la especificada inicialmente, por lo que pasar a una familia o tamaño de instancia diferente podría mejorar tanto el rendimiento como la eficiencia.
Antipatrones usuales:
-
Supervisión de las métricas en el nivel de sistema para conocer mejor la carga de trabajo y no reevaluar las necesidades de computación.
-
Diseña sus necesidades de computación para los requisitos de carga de trabajo máxima.
-
Sobredimensiona la solución de computación existente para cumplir los requisitos de escalado o rendimiento cuando el cambio a una solución de computación alternativa se adaptaría mejor a las características de su carga de trabajo.
Beneficios de establecer esta práctica recomendada: recursos de computación optimizados basados en datos de la vida real y el equilibrio deseado entre coste y rendimiento.
Nivel de riesgo expuesto si no se establece esta práctica recomendada: bajo
Guía para la implementación
Utilice un enfoque basado en datos para optimizar los recursos de computación en función del comportamiento observado de la carga de trabajo. Para lograr el máximo rendimiento y eficiencia, utilice los datos obtenidos a lo largo del tiempo de su carga de trabajo para ajustar y optimizar continuamente sus recursos. Observe la cantidad de recursos actuales que tiende a usar su carga de trabajo y determine dónde puede hacer cambios para ajustarlos mejor a las necesidades de su carga de trabajo. Cuando se comprometen demasiados recursos, el rendimiento del sistema se degrada, y cuando los recursos no se utilizan adecuadamente, el sistema funciona de forma menos eficiente y con un coste más elevado.
Para optimizar el rendimiento y la utilización de los recursos, se necesita una visión operativa unificada, datos granulares en tiempo real y una referencia histórica. Puede crear paneles automáticos para visualizar estos datos y obtener información operativa y de utilización.
Pasos para la implementación
-
Recopile métricas relacionadas con la computación a lo largo del tiempo.
-
Compare las métricas de la carga de trabajo con los recursos disponibles en la solución de computación seleccionada.
-
Determine los cambios de configuración necesarios adaptando la solución existente o evaluando la solución de computación alternativa.
Recursos
Prácticas recomendadas relacionadas:
Documentos relacionados:
-
Cloud Compute with AWS
(Computación en la nube con AWS) -
EC2 Instance Types (Tipos de instancias EC2)
-
Amazon ECS Containers: Amazon ECS Container Instances (Contenedores: instancias de contenedor de Amazon ECS)
-
Amazon EKS Containers: Amazon EKS Worker Nodes (Contenedores: nodos de trabajo de Amazon EKS)
-
Best practices for working with AWS Lambda functions (Prácticas recomendadas para trabajar con funciones de AWS Lambda)
Vídeos relacionados:
-
Amazon EC2 foundations (CMP211-R2)
(Fundamentos de Amazon EC2) -
Better, faster, cheaper compute: Cost-optimizing Amazon EC2
(Computación mejor, más rápida y más barata: Optimización de costes de Amazon EC2) (CMP202-R1) -
Deliver high performance ML inference with AWS Inferentia (CMP324-R1)
(Realice inferencias ML de alto rendimiento con AWS) -
Optimize performance and cost for your AWS compute (CMP323-R1)
(Optimice el rendimiento y coste de su computación con AWS) -
Powering next-gen Amazon EC2: Deep dive into the Nitro system
(Impulso de Amazon EC2 de nueva generación: profundización en el sistema Nitro) -
Selecting and optimizing Amazon EC2 instances
(Selección y optimización de instancias Amazon EC2)
Ejemplos relacionados:
-
Rightsizing with Compute Optimizer and Memory utilization enabled
(Redimensionamiento correcto con Compute Optimizer y utilización de memoria habilitada) -
AWS Compute Optimizer Demo code
(Código de demostración de AWS Compute Optimizer)