Recomendaciones para seleccionar los servicios adecuados
Se aplica a esta recomendación de lista de comprobación de eficiencia del rendimiento de Azure Well-Architected Framework:
PE:03 | Seleccione los servicios correctos. Los servicios, la infraestructura y las selecciones de niveles deben admitir la capacidad de alcanzar los objetivos de rendimiento de la carga de trabajo y dar cabida a los cambios de capacidad esperados. Las selecciones también deben pesar las ventajas de usar características de plataforma o crear una implementación personalizada. |
---|
En esta guía se describen las recomendaciones para seleccionar los servicios adecuados para la carga de trabajo. Las siguientes recomendaciones le ayudarán a elegir los servicios que mejor cumplan los requisitos y las demandas de la carga de trabajo. Al usar servicios diseñados para controlar los requisitos de la carga de trabajo, puede asegurarse de que la carga de trabajo cumple los objetivos de rendimiento. Si elige servicios inadecuados para la carga de trabajo, es posible que los servicios no puedan controlar las demandas de la carga de trabajo. Los servicios insuficientes pueden provocar tiempos de respuesta lentos, cuellos de botella o errores de carga de trabajo.
Definiciones
Término | Definición |
---|---|
Zona de disponibilidad | Un grupo separado de centros de datos dentro de una región. Cada zona de disponibilidad es independiente de las demás, con su propia infraestructura de alimentación, refrigeración y red. Muchas regiones admiten zonas de disponibilidad. |
Servicio Compute | Un servicio que proporciona la infraestructura que necesita para ejecutar una aplicación. |
Servicio de base de datos | Servicio que proporciona bases de datos relacionales y no relacionales para la aplicación. |
Infraestructura | Los componentes físicos de la informática en la nube y la ubicación geográfica de los componentes. |
Infraestructura como servicio (IaaS) | Un servicio en el que el cliente es responsable del sistema operativo, la identidad, las aplicaciones y las redes. |
Plataforma como servicio (PaaS) | Un servicio en el que el proveedor de servicios en la nube es responsable del sistema operativo. El proveedor de servicios en la nube comparte la responsabilidad con el cliente para administrar identidades, aplicaciones y redes. |
Region | Perímetro geográfico que contiene un conjunto de centros de datos. |
Recurso | Una sola entidad o componente que puede crear, configurar y usar dentro de un proveedor de servicios en la nube. |
Servicio | Un producto o oferta de un proveedor de servicios en la nube. |
Referencia de almacén (SKU) | Un nivel de servicio para un servicio de Azure. |
Servicio de Storage | Servicio que proporciona almacenamiento para objetos, bloques y archivos. |
Estrategias de diseño principales
Los servicios que elija deben alinearse con los objetivos de rendimiento de la carga de trabajo y adaptarse a las necesidades futuras de capacidad. A medida que la carga de trabajo se expande o evoluciona, los servicios que use deben coincidir con los estándares de rendimiento sin necesidad de realizar ajustes importantes. Tenga en cuenta el equilibrio entre las características de la plataforma y las implementaciones personalizadas. Las características de la plataforma proporcionan soluciones inmediatas, pero las opciones personalizadas ofrecen una adaptación precisa. Las selecciones de servicio deben estar tanto pensando en el futuro como adaptadas a sus necesidades específicas, teniendo en cuenta las ventajas entre comodidad y personalización.
Descripción de los requisitos de carga de trabajo
Comprender los requisitos de carga de trabajo hace referencia a comprender las demandas técnicas y funcionales de una carga de trabajo. Este análisis ayuda a determinar los recursos, el almacenamiento, el proceso, la red y otras especificaciones necesarias para ejecutar la carga de trabajo. La alineación de servicios con las necesidades específicas de una carga de trabajo ayuda a evitar el sobreaprovisionamiento o la infrautilización de recursos.
Evalúe las necesidades y características de la carga de trabajo para determinar los requisitos y alinee los requisitos de carga de trabajo con los objetivos de rendimiento en cada nivel. Debe tener en cuenta las restricciones o dependencias. Cuando comprenda los requisitos de la carga de trabajo, puede tomar decisiones informadas. Puede determinar la infraestructura adecuada e implementar estrategias para controlar las cargas máximas o variaciones en la demanda.
Cumplir los objetivos de rendimiento. Seleccione los servicios que le permiten cumplir los objetivos de rendimiento de la carga de trabajo. Asegúrese de que un servicio puede admitir las necesidades de rendimiento y que puede supervisar su rendimiento. Recopile datos de rendimiento para componentes críticos.
Tenga en cuenta las restricciones de la organización. Familiarícese con las restricciones que su organización podría tener en los servicios que implemente. Tenga en cuenta estas restricciones al diseñar la solución.
Considere los requisitos de cumplimiento y seguridad. Los requisitos de cumplimiento y seguridad pueden afectar a los servicios y configuraciones que seleccione. Asegúrese de que un servicio que elija cumpla los requisitos relacionados con el almacenamiento, el cifrado, los controles de acceso, los registros de auditoría y las ubicaciones de datos.
Considere las aptitudes del equipo. El equipo crea y mantiene las cargas de trabajo. Los distintos servicios requieren diferentes aptitudes. Elija los servicios que el equipo sabe cómo usar o confirmar para entrenarlos antes de elegir un servicio. Asegúrese de que los miembros del equipo poseen la experiencia y el conocimiento para usar eficazmente los servicios y optimizar su rendimiento.
Compensación: los servicios especializados ofrecen funcionalidades específicas, pero pueden limitar la personalización. Los recursos flexibles requieren más administración y configuración en comparación con los servicios especializados. Los servicios administrados ofrecen facilidad de administración, pero es posible que tenga menos control sobre la infraestructura subyacente en comparación con los recursos autoadministrados.
Descripción de los servicios
Comprender los servicios consiste en conocer las funcionalidades, los límites y las funcionalidades de las herramientas y ofertas de un proveedor. Una comprensión de los servicios le ayuda a usar características integradas, lo que reduce la necesidad de soluciones personalizadas complejas y mejora la eficiencia del rendimiento.
Tenga en cuenta varios factores y obtenga una comprensión completa de un servicio antes de elegirlo. Investigue y evalúe los servicios y herramientas que ofrece el proveedor. Determine qué servicios y herramientas se alinean mejor con los requisitos de carga de trabajo. Tenga en cuenta factores como servicios administrados, opciones sin servidor y servicios especializados.
Descripción de los límites del servicio
Los límites de servicio son los umbrales predefinidos o los límites establecidos por los proveedores de servicios. Los límites de servicio definen el uso máximo de recursos o funcionalidades dentro de ese servicio. Cuando esté familiarizado con los límites de servicio, puede evitar problemas como la contención de recursos, la degradación del rendimiento o interrupciones inesperadas del servicio. Puede planear y escalar la infraestructura correctamente. El planeamiento tiene en cuenta factores como el volumen de datos, la capacidad de procesamiento y los requisitos de residencia de datos.
Preferir características de la plataforma
La preferencia de las características de la plataforma consiste en usar funcionalidades integradas proporcionadas por un proveedor para controlar tareas específicas sin código personalizado. Los proveedores diseñan características de plataforma para controlar tareas específicas de forma eficaz a escala y mantienen periódicamente estas características. Las características de la plataforma le permiten aprovechar mejor las funcionalidades de infraestructura en la nube. Elija servicios que le permitan descargar la funcionalidad en la plataforma en lugar de escribir y mantener su propio código personalizado. En muchos casos, las soluciones de plataforma como servicio (PaaS) proporcionan una mejor eficiencia de rendimiento que el código personalizado. El código personalizado agrega complejidad y hace que la carga de trabajo sea propensa a problemas de rendimiento. Solo desarrolle código personalizado cuando las características de servicio no sean suficientes.
Equilibrio: el mejor servicio para la carga de trabajo podría ser una tecnología en la que el equipo no está capacitado, no puede permitirse o podría requerir capas de seguridad adicionales. Por ejemplo, un equilibrador de carga público podría ajustarse a sus necesidades de rendimiento. Pero si no tiene un firewall de aplicaciones web, es posible que tenga que implementar un firewall para proteger la carga de trabajo.
Evaluación de los requisitos de infraestructura
La eficiencia del rendimiento de los recursos está vinculada a la infraestructura en la que residen. Hace que la selección de la infraestructura adecuada sea fundamental para la eficiencia del rendimiento del servicio. Evaluar los requisitos de infraestructura significa identificar la región geográfica y las zonas de disponibilidad más adecuadas para admitir la carga de trabajo. Entre las consideraciones clave de esta toma de decisiones se incluyen:
Descripción de las regiones y las zonas de disponibilidad. Cada región corresponde a una ubicación geográfica distinta. Las zonas de disponibilidad representan centros de datos físicos individuales dentro de una región determinada.
Modelo de implementación de una sola región frente al modelo de implementación de varias regiones. Un modelo de implementación de una sola región implementa todos los recursos de una sola región. Un modelo de implementación de varias regiones implementa recursos en varias regiones. Una implementación de varias regiones puede reducir la latencia a los usuarios finales y mitigar las restricciones de capacidad. Sin embargo, también puede aumentar el costo y la complejidad de la carga de trabajo. Elija el modelo de implementación que mejor se adapte a sus necesidades de carga de trabajo.
Descripción de las características disponibles. Las distintas regiones tienen diferentes características disponibles, como el número de servicios y zonas de disponibilidad. Comprenda las características que están disponibles en una región antes de seleccionarla. Asegúrese de que una región satisface las necesidades de rendimiento de la carga de trabajo.
Considere la latencia. Latencia, el tiempo que tardan los datos en viajar desde el origen al destino, aumenta los servicios adicionales entre sí. Los servicios que se comunican entre regiones o zonas de disponibilidad pueden enfrentarse a una mayor latencia. Se recomienda identificar los servicios que se comunican con frecuencia y colocarlos dentro de la misma región. Además, seleccionar un proxy de región en la base de usuarios principal puede minimizar la latencia, lo que ofrece una mejor experiencia de usuario.
Descripción de la asignación del centro de datos. Es posible que las zonas de disponibilidad no se asignen de forma coherente a los mismos centros de datos en distintas suscripciones. Por ejemplo, "Zona 1" en "Suscripción A" podría ser diferente de "Zona 1" en "Suscripción B". Al trabajar con varias suscripciones, debe conocer estas asignaciones para seleccionar zonas que refuerzan el rendimiento de forma óptima.
Evaluación de los requisitos de red
Evalúe las necesidades de red para determinar los servicios de carga de trabajo y las configuraciones adecuados. Asegúrese de que la red puede admitir la carga de trabajo. Para evaluar los requisitos de red, tenga en cuenta lo siguiente:
Descripción del tráfico de red. Evalúe el tráfico de red esperado para la carga de trabajo. Comprenda las necesidades de transferencia de datos y la frecuencia de las solicitudes de red.
Comprender los requisitos de ancho de banda. Determine los requisitos de ancho de banda para la carga de trabajo. Tenga en cuenta la cantidad de datos transmitidos y recibidos a través de la red.
Descripción de la latencia de red. Evalúe la latencia deseada para la carga de trabajo. Use redes virtuales privadas y redes troncales en lugar de atravesar la red pública de Internet. Esta técnica reduce la latencia de la carga de trabajo.
Comprender el rendimiento. Tenga en cuenta el rendimiento necesario para la carga de trabajo. El rendimiento hace referencia a la cantidad de datos que se pueden transmitir a través de una red en un tiempo determinado. Configure las opciones de enrutamiento de red para aprovechar las ventajas de rendimiento de red.
Compensación: las redes virtuales privadas limitan el acceso público y dificultan la implementación y administración de recursos.
Evaluación de los requisitos de proceso
La evaluación de los requisitos de proceso implica evaluar las necesidades de proceso específicas de una carga de trabajo, incluidos factores como el tipo de instancia, la escalabilidad y la contenedorización. Los distintos servicios de proceso tienen distintas funcionalidades y características que pueden afectar al rendimiento de la carga de trabajo. Seleccione el servicio de proceso óptimo para asegurarse de que la carga de trabajo se ejecuta de forma eficaz. Considere las estrategias siguientes:
Descripción de los tipos de instancia. Los distintos tipos de instancia están optimizados para diferentes cargas de trabajo, como instancias optimizadas para CPU, optimizadas para memoria y GPU. Elija el tipo de instancia que se adapte a sus necesidades.
Considere la posibilidad de escalar automáticamente. Si la carga de trabajo tiene una demanda variable, considere la posibilidad de usar un servicio de proceso con una característica de escalado automático que pueda ajustar automáticamente la capacidad de proceso en función de la demanda. El escalado automático ayuda a garantizar que tiene suficientes recursos durante las horas punta y evita el exceso de aprovisionamiento durante períodos de baja demanda.
Considere la posibilidad de incluir la contenedorización. Los contenedores proporcionan ventajas de rendimiento en comparación con una carga de trabajo no contenedora. Considere la posibilidad de usar la contenedorización si se adapta a sus necesidades arquitectónicas. Los contenedores mejoran el rendimiento del proceso a través del aislamiento, la eficiencia de los recursos, el tiempo de inicio rápido y la portabilidad.
Al usar contenedores, tenga en cuenta factores de diseño como incluir en contenedores todos los componentes de la aplicación. Use entornos de ejecución de contenedor basados en Linux para imágenes ligeras. Proporcione a los contenedores ciclos de vida cortos para que sean inmutables y reemplazables. Recopile registros y métricas pertinentes de contenedores, hosts de contenedor y el clúster subyacente. Use estos datos para supervisar y analizar el rendimiento. Los contenedores son solo un componente de una arquitectura general. Elija un orquestador de contenedores adecuado, como Kubernetes, para mejorar aún más el rendimiento y la escalabilidad.
Ventaja del contenedor Descripción Aislamiento Los contenedores proporcionan entornos aislados para las aplicaciones. Los contenedores garantizan que los recursos de la aplicación no interfieran entre sí. Este aislamiento garantiza que los recursos de proceso asignados a un contenedor estén dedicados a ejecutar una aplicación específica, lo que da lugar a un mejor rendimiento. Eficiencia de los recursos Los contenedores son ligeros y comparten el kernel del sistema operativo host, lo que permite un uso eficaz de los recursos. Varios contenedores se pueden ejecutar en la misma infraestructura virtualizada, lo que maximiza el uso de recursos de proceso. Tiempo de inicio rápido Las imágenes de contenedor se crean previamente y se inician rápidamente cuando es necesario. Este tiempo de inicio rápido permite una escalabilidad rápida. Permite que las aplicaciones se escalen o reduzcan verticalmente en función de la demanda y eviten cuellos de botella de rendimiento. Portabilidad Los contenedores encapsulan todas las dependencias y bibliotecas necesarias dentro de la imagen. Con los contenedores, es más fácil mover aplicaciones entre diferentes sistemas operativos o entornos. Esta portabilidad permite flexibilidad en la implementación de aplicaciones y permite una migración sencilla entre proveedores de nube o entornos locales. Elija el nivel adecuado. Dentro de cada servicio de proceso, puede establecer la capacidad de proceso, seleccionar características y habilitar funcionalidades. En función de los destinos de rendimiento, elija el nivel de servicio adecuado para el servicio de proceso.
Determine el recuento de instancias. Determine el recuento mínimo de instancias que requiere la carga de trabajo. Algunas cargas de trabajo, incluso con una carga mínima, pueden requerir más de una instancia de un recurso de proceso. Establezca el recuento mínimo de instancias en consecuencia.
Evaluación de los requisitos de equilibrio de carga
El equilibrio de carga garantiza que el tráfico de red se distribuya uniformemente e impide que cualquier único servidor se sobrepase con las solicitudes. El equilibrio de carga ayuda a evitar cuellos de botella y reducir los tiempos de respuesta. Evalúe los diferentes servicios de equilibrio de carga que ofrece el proveedor de nube. Revise la documentación y las herramientas de comparación del proveedor de nube para comprender las características. Seleccione el servicio más adecuado para la carga de trabajo. Para seleccionar un servicio de equilibrio de carga, tenga en cuenta lo siguiente:
Descripción del tipo de tráfico: determine si el servicio de equilibrio de carga necesita controlar el tráfico web, como HTTP y HTTPS, u otros protocolos, como el Protocolo de control de transmisión (TCP) o el Protocolo de datagrama de usuario (UDP).
Conocer el enrutamiento global o regional: determine si la carga de trabajo requiere equilibrio de carga dentro de una región específica o entre varias regiones.
Conocer los objetivos de nivel de servicio (SLO): tenga en cuenta el acuerdo de nivel de servicio (SLA). Los distintos servicios de equilibrio de carga ofrecen distintos niveles de rendimiento.
Descripción de las características: considere la posibilidad de equilibrar la carga de los servicios que proporcionan aceleración del sitio, distribución óptima del tráfico y equilibrio de carga de capa 4 de baja latencia.
Evaluación de los requisitos del almacén de datos
La evaluación de los requisitos del almacén de datos consiste en evaluar las necesidades y condiciones específicas para almacenar, recuperar y administrar datos. Esta evaluación considera factores como el volumen de datos, la velocidad de acceso, la coherencia y la durabilidad. Una carga de trabajo puede requerir varios tipos de almacenes de datos en función de distintos requisitos empresariales y técnicos. La identificación de los servicios de almacén de datos adecuados y la implementación adecuada ayuda a evitar cuellos de botella y garantiza el acceso rápido a los datos.
Evaluación de los requisitos de la base de datos
La base de datos puede afectar a factores como el almacenamiento y recuperación de datos, el procesamiento de transacciones, las garantías de coherencia y el control de datos grandes o cambiantes rápidamente. Evalúe las necesidades y los criterios de la base de datos. Seleccione un sistema de base de datos que pueda cumplir esos requisitos. Evalúe los requisitos de la base de datos antes de elegir una base de datos. Para evaluar los requisitos de la base de datos y elegir la base de datos adecuada, siga estos pasos:
Identifique las necesidades de la carga de trabajo. Comprenda los requisitos específicos de la carga de trabajo, como el volumen de datos, las tasas de transacción esperadas, la simultaneidad, los tipos de datos y el crecimiento esperado. Evalúe diferentes sistemas de base de datos en función de sus necesidades de carga de trabajo. Por ejemplo, si la carga de trabajo requiere un procesamiento de datos en tiempo real de alto rendimiento, puede elegir un sistema de base de datos optimizado para la ingesta rápida de datos y baja latencia.
Tenga en cuenta el modelo de datos. Determine el modelo de datos que mejor se adapte a la carga de trabajo. Evalúe los requisitos de la base de datos para asegurarse de que la base de datos elegida admite las restricciones de integridad, relaciones y estructuras de datos necesarias. Por ejemplo, si los datos tienen una estructura altamente relacional, puede optar por un sistema de administración de bases de datos relacionales (RDBMS) que proporcione una sólida compatibilidad con las transacciones y la integridad referencial. El modelo de datos puede ser jerárquico, red, relacional, orientado a objetos o NoSQL. Evalúe la complejidad del modelo de datos. Asegúrese de que la base de datos elegida admite las estructuras de datos y las relaciones necesarias.
Evalúe las funcionalidades. Tenga en cuenta factores como patrones de lectura y escritura, complejidad de las consultas, requisitos de latencia y necesidades de escalabilidad. Evalúe las funcionalidades de rendimiento de los distintos sistemas de base de datos en consecuencia. Algunas bases de datos destacan en cargas de trabajo con mucha lectura, mientras que otras están optimizadas para cargas de trabajo de escritura intensiva o analíticas.
Evalúe la carga. Tenga en cuenta factores como el volumen de datos, las tasas de transacción, las relaciones de lectura y escritura y el crecimiento esperado. Elija una base de datos que pueda controlar la carga de trabajo prevista para garantizar un funcionamiento sin problemas y evitar cuellos de botella de rendimiento a medida que se escala la carga de trabajo. Tenga en cuenta los requisitos de escalabilidad de la carga de trabajo. Estos requisitos incluyen el crecimiento anticipado de los datos, el acceso simultáneo al usuario y la necesidad de escalado horizontal o vertical. Evalúe las opciones de escalabilidad y las características de disponibilidad que proporcionan los distintos sistemas de base de datos.
Evaluación de los requisitos de almacenamiento
Elija los servicios de almacenamiento que se alineen con los patrones de acceso a datos, los requisitos de durabilidad y las necesidades de rendimiento. La mayoría de las cargas de trabajo en la nube usan una combinación de tecnologías de almacenamiento. Esta técnica se conoce como el enfoque de persistencia poliglot. Determine la combinación adecuada de servicios de almacenamiento para la carga de trabajo. También puede separar los datos para evitar la contaminación. Por ejemplo, puede tener cuentas de almacenamiento independientes para supervisar datos y datos empresariales. Elegir la combinación adecuada y la implementación correcta es importante para optimizar el rendimiento de la aplicación.
Evaluación de los requisitos de caché
Una memoria caché almacena los datos a los que se accede con frecuencia. El almacenamiento en caché reduce la latencia de acceso a los datos y reduce la carga en los componentes de almacenamiento de datos. Permite que la carga de trabajo controle más solicitudes sin escalado. Es habitual almacenar en caché los datos de carga de trabajo y el contenido estático. Una caché de Redis puede almacenar datos de sesión, resultados de base de datos, respuestas de API y datos de referencia, como las opciones de configuración. Una red de entrega de contenido o una aplicación web estática puede almacenar en caché y servir contenido estático. Considere la posibilidad de almacenar en caché los datos para mejorar el rendimiento de la carga de trabajo. Elija la opción de almacenamiento en caché adecuada para la carga de trabajo, lo que prefiere los servicios de almacenamiento en caché de la plataforma, como Azure Redis Cache, en lugar de los personalizados o autohospedados.
Facilitación de Azure
Descripción de los requisitos: use Azure Monitor para recopilar y analizar datos de la carga de trabajo. Monitor proporciona información sobre el rendimiento y el estado de las cargas de trabajo, lo que le permite identificar y solucionar problemas.
Descripción y evaluación de los servicios: revise los servicios y productos de Azure para determinar si cumplen sus requisitos de rendimiento. Azure ofrece varios servicios que realizan el mismo resultado. Tiene la flexibilidad de alinear su elección de servicio con sus necesidades de rendimiento, el conjunto de aptitudes de equipo y los requisitos de costos.
Consulte Límites, cuotas y restricciones de suscripción y servicios de Microsoft Azure para obtener una lista de los límites de Azure más habituales.
En el ejemplo Límites y cuotas de consulta se muestra cómo consultar los límites y cuotas de los recursos usados habitualmente.
Azure tiene muchos servicios que pueden dar cabida a cualquier carga de trabajo. Revise las instrucciones de selección de cada tipo de servicio para ayudarle a simplificar la selección en función de sus requisitos. Consulte las siguientes guías para elegir:
- Una región
- Compute Services
- Servicios de contenedor
- Servicios de almacén de datos
- Servicios de equilibrio de carga
- Servicios de almacenamiento
Vínculos relacionados
- Regiones de Azure con zonas de disponibilidad
- Recomendaciones para definir destinos de rendimiento
- Recomendaciones para usar zonas de disponibilidad y regiones
- ¿Qué son las zonas de disponibilidad?
- Selección de regiones de Azure
Lista de comprobación de eficiencia del rendimiento
Consulte el conjunto completo de recomendaciones.