Este contenido está desactualizado. Esta versión de Well-Architected Framework se encuentra ahora en: https://docs.aws.amazon.com/es_es/wellarchitected/2022-03-31/framework/performance-efficiency.html

PERF 2: ¿Cómo seleccionar una solución de informática?

La solución de informática óptima para una carga de trabajo específica puede variar en función del diseño de la aplicación, los patrones de uso y los ajustes de configuración. Las arquitecturas pueden utilizar diferentes soluciones de informática para varios componentes y habilitar distintas características para mejorar el rendimiento. Si se elige la solución de informática incorrecta para una arquitectura, esto puede reducir la eficiencia del rendimiento.

Recursos

Amazon EC2 foundations (CMP211-R2)
Powering next-gen Amazon EC2: Deep dive into the Nitro system
Deliver high performance ML inference with AWS Inferentia (CMP324-R1)
Optimize performance and cost for your AWS compute (CMP323-R1)
Better, faster, cheaper compute: Cost-optimizing Amazon EC2 (CMP202-R1)
Cloud Compute with AWS
EC2 Instance Types
Processor State Control for Your EC2 Instance
EKS Containers: EKS Worker Nodes
ECS Containers: Amazon ECS Container Instances
Functions: Lambda Function Configuration

Prácticas recomendadas:

Plan de mejora

Evalúe las opciones de informática disponibles

  • Considere las opciones de informática: Decida qué opción de informática se ajusta a sus necesidades. Desde el punto de vista del rendimiento, las instancias pueden utilizarse para aplicaciones de ejecución prolongada, en especial las que tienen ciclos de computación de estado y de ejecución prolongada, las funciones pueden utilizarse para aplicaciones iniciadas por eventos y sin estado que necesitan tiempos de respuesta rápidos y los contenedores le permiten utilizar los recursos de una instancia de manera eficiente.
    Cloud Compute with AWS
  • Defina los requisitos de rendimiento informático: Identifique las métricas de rendimiento informático importantes para su carga de trabajo e implemente sus requisitos mediante un enfoque basado en datos que implique puntos de referencia o pruebas de carga. Utilice estos datos para identificar las limitaciones de su solución de informática y examine las opciones de configuración para mejorarla.
  • Comprenda las opciones de configuración informática disponibles

  • Conozca las opciones de configuración disponibles: Para la opción informática seleccionada, utilice las opciones de configuración disponibles para optimizar sus requisitos de rendimiento.Utilice AWS Nitro Systems para permitir el consumo completo de los recursos informáticos y de memoria del hardware de alojamiento. Las tarjetas de Nitro específicas permiten redes de alta velocidad, EBS de alta velocidad y aceleración de E/S.
    AWS Nitro System
  • Recopile métricas relacionadas con la informática

  • Recopile métricas relacionadas con la informática: Amazon CloudWatch puede recopilar métricas de los recursos informáticos en su entorno. Utilice una combinación de CloudWatch y otras herramientas de registro de métricas para realizar un seguimiento de las métricas a nivel del sistema dentro de su carga de trabajo. Registre datos como los niveles de uso de la CPU, la memoria, la E/S del disco y la red para obtener información sobre los niveles de uso o cuellos de botella. Estos datos son fundamentales para comprender el rendimiento de la carga de trabajo y la eficacia con la que se utilizan los recursos. Utilice estas métricas como parte de un enfoque basado en datos para ajustar y optimizar los recursos de su carga de trabajo de forma activa.
    Amazon CloudWatch
  • Determine la configuración necesaria mediante el dimensionamiento

  • Modifique la configuración de su carga de trabajo mediante el dimensionamiento: Para optimizar tanto el rendimiento como la eficiencia en general, determine qué recursos necesita su carga de trabajo. Elija instancias optimizadas para la memoria en los sistemas que requieren más memoria que la CPU o instancias optimizadas para la informática en los componentes que realizan el procesamiento de datos que no requieren un uso intenso de memoria. El dimensionamiento correcto permite que su carga de trabajo funcione de la mejor manera posible mientras solo utiliza los recursos necesarios
  • Utilice la elasticidad disponible de los recursos

  • Aproveche la elasticidad: La elasticidad iguala la oferta de recursos que tiene en relación con su demanda. Las instancias, contenedores y funciones proporcionan mecanismos de elasticidad, ya sea en combinación con el escalado automático o como una característica del servicio. Utilice la elasticidad en su arquitectura para asegurarse de tener la capacidad suficiente para cumplir con los requisitos de rendimiento en todas las escalas de uso. Asegúrese de que las métricas de escalado ascendente o descendente de los recursos elásticos sean validadas según el tipo de carga de trabajo que se implemente. Si implementa una aplicación de transcodificación de video, se espera un uso del 100 % de la CPU, por lo que esta no debería ser su métrica principal. Como alternativa, puede medir la profundidad de la cola de los trabajos de transcodificación en espera para escalar sus tipos de instancia. Asegúrese de que las implementaciones de esa carga de trabajo puedan gestionar eventos de escala ascendente y descendente. El escalado descendente de forma segura de los componentes de la carga de trabajo es tan importante como el escalado ascendente de los recursos cuando la demanda lo amerita. Cree escenarios de prueba para eventos de escala descendente a fin de asegurar que la carga de trabajo tenga el comportamiento esperado.
  • Reevalúe las necesidades informáticas en función de las métricas

  • Utilice un enfoque basado en los datos para optimizar los recursos: Para lograr el máximo rendimiento y eficiencia, utilice los datos recopilados a lo largo del tiempo de su carga de trabajo para ajustar y optimizar sus recursos. Observe las tendencias en el uso de los recursos actuales de su carga de trabajo y determine dónde puede hacer cambios para que coincidan mejor con las necesidades de su carga de trabajo. El uso excesivo de los recursos causa una disminución del rendimiento del sistema, mientras que su subutilización conlleva a un uso menos eficiente de los recursos a un mayor costo.