PERF 1: ¿Cómo selecciona la mejor arquitectura de rendimiento?

A menudo, se requieren múltiples enfoques para obtener un rendimiento óptimo en una carga de trabajo. Los sistemas de buena arquitectura utilizan múltiples soluciones y permiten diferentes características para mejorar el rendimiento.

Recursos

Introducing The Amazon Builders’ Library (DOP328)

Prácticas recomendadas:

Plan de mejora

Comprenda los recursos y servicios disponibles

  • Haga un inventario del software y arquitectura de la carga de trabajo para servicios relacionados: Recopile un inventario de la carga de trabajo y decida sobre qué categoría de productos conocer más.Recopile los componentes de una carga de trabajo identificada que se puedan reemplazar con servicios administrados para aumentar el rendimiento y reducir la complejidad operativa.
  • Defina un proceso para opciones de arquitectura

  • Seleccione un enfoque de arquitectura: Identifique el tipo de arquitectura que satisfaga los requisitos de rendimiento.Identifique las restricciones, como los medios para la entrega (escritorio, web, móvil, IoT), requisitos heredados e integraciones.Identifique las oportunidades para reutilizar, incluida la refactorización. Consulte otros equipos, diagramas de arquitectura y recursos, como los arquitectos de soluciones de AWS, las arquitecturas de referencia de AWS y los socios de APN a fin de ayudarlo a elegir una arquitectura.
  • Defina los requisitos del rendimiento: Utilice la experiencia del cliente para identificar las métricas más importantes. Para cada métrica, identifique el objetivo, el enfoque de medición y la prioridad.Defina la experiencia del cliente. Documente la experiencia de rendimiento solicitada por los clientes, incluido de qué manera los clientes juzgarán el rendimiento de la carga de trabajo.Priorice las preocupaciones de la experiencia para las historias de usuario esenciales. Incluya requisitos de rendimiento e implemente trayectos de usuario con scripts para asegurarse que conozca cómo estas historias funcionan según sus requerimientos.
  • Gestione los requisitos de costo en las decisiones

  • Optimice los componentes de la carga de trabajo para reducir costos: Redimensione los componentes de la carga de trabajo y habilite la elasticidad para reducir los costos y maximizar la eficiencia de los componentes.Determine qué componentes de la carga de trabajo pueden reemplazarse con servicios administrados, como bases de datos administradas, caché en memoria y proxis inversos.
  • Utilice políticas o arquitecturas de referencia

  • Implemente la carga de trabajo con las políticas existentes o las arquitecturas de referencia: Integre los servicios en la implementación de la nube, posteriormente utilice las pruebas de rendimiento para asegurarse que siga cumpliendo los requisitos de rendimiento.
  • Utilice la guía del proveedor de la nube o un socio adecuado

  • Póngase en contacto con los recursos de AWS para recibir asistencia: Los arquitectos de soluciones y los servicios profesionales de AWS ofrecen orientación para la implementación de soluciones.Los socios de APN ofrecen experiencia en AWS para ayudarlo a desbloquear agilidad e innovación para su empresa.
  • Compare las cargas de trabajo existentes

  • Monitoree el rendimiento durante el desarrollo: Implemente procesos que ofrezcan visibilidad en el rendimiento a medida que la carga de trabajo evoluciona.
  • Integre su canalización de entrega: Ejecute pruebas de carga en la canalización de entrega automáticamente. Compare los resultados de la prueba con los indicadores clave de rendimiento (KPI) predefinidos y límites para garantizar que sigue cumpliendo los requisitos de rendimiento.
  • Evalúe los trayectos de usuarios: Para las pruebas de carga, utilice versiones sintéticas o depuradas de los datos de producción (elimina la información confidencial o de identificación). Ejercite toda su arquitectura con los trayectos de usuario reproducidos o preprogramados a través de la aplicación a escala.
  • Realice pruebas de carga a su carga de trabajo

  • Valide su enfoque con las pruebas de carga: Realice una prueba de carga, una prueba de concepto, para averiguar si cumple con los requisitos de rendimiento. Con los servicios de AWS, puede ejecutar entornos a escala de producción para probar su arquitectura. Como solo paga por el entorno de prueba cuando lo necesita, puede llevar a cabo pruebas a escala completa a solo una fracción del costo de usar un entorno en las instalaciones. Política de pruebas de Amazon EC2
  • Monitoree las métricas: Amazon CloudWatch puede recopilar métricas de los recursos en su arquitectura. También puede recopilar y publicar métricas personalizadas para los negocios de superficie o métricas derivadas. Utilice CloudWatch o soluciones de terceros para establecer alarmas que indiquen cuando se sobrepasan los límites.
  • Prueba a escala: La prueba de carga utiliza la carga de trabajo real, así puede ver de qué manera rinde su solución en un entorno de producción. Con los servicios de AWS, puede ejecutar entornos a escala de producción para probar su arquitectura. Como solo paga por el entorno de prueba cuando lo necesita, puede llevar a cabo pruebas a escala completa a un costo inferior que cuando utiliza un entorno en las instalaciones. Aproveche la nube de AWS para probar su carga de trabajo y descubrir dónde falla en el escalado o si escala de una manera que no es lineal. Por ejemplo, utilice las instancias de spot para generar cargas a bajo costo y descubrir cuellos de botellas antes de que se experimenten en la producción.