Aprovecha la escalabilidad horizontal

Last reviewed 2024-12-30 UTC

Este principio del pilar de confiabilidad del Google Cloud Well-Architected Framework proporciona recomendaciones para ayudarte a usar el ajuste de escala horizontal. Si usas el ajuste de escala horizontal, puedes garantizar que tus cargas de trabajo en Google Cloud se puedan ajustar de forma eficiente y mantener el rendimiento.

Este principio es pertinente para el área de enfoque de alcance de la confiabilidad.

Descripción general del principio

Rediseña tu sistema a una arquitectura horizontal. Para adaptarse al crecimiento del tráfico o los datos, puedes agregar más recursos. También puedes quitar recursos cuando no estén en uso.

Para comprender el valor del ajuste de escala horizontal, considera las limitaciones del ajuste de escala vertical.

Una situación común para el ajuste de escala vertical es usar una base de datos MySQL como la base de datos principal con datos críticos. A medida que aumenta el uso de la base de datos, se requiere más RAM y CPU. Con el tiempo, la base de datos alcanza el límite de memoria en la máquina host y debe actualizarse. Es posible que este proceso deba repetirse varias veces. El problema es que existen límites estrictos sobre cuánto puede crecer una base de datos. Los tamaños de las VM no son ilimitados. La base de datos puede llegar a un punto en el que ya no sea posible agregar más recursos.

Incluso si los recursos fueran ilimitados, una VM grande puede convertirse en un único punto de falla. Cualquier problema con la VM de la base de datos principal puede causar respuestas de error o una interrupción en todo el sistema que afecte a todos los usuarios. Evita los puntos únicos de falla, como se describe en Crea sistemas con alta disponibilidad a través de la redundancia de recursos.

Además de estos límites de ajuste de escala, el ajuste de escala vertical suele ser más costoso. El costo puede aumentar de forma exponencial a medida que se adquieren máquinas con mayores cantidades de potencia de procesamiento y memoria.

Por el contrario, el ajuste de escala horizontal puede costar menos. El potencial de ajuste de escala horizontal es prácticamente ilimitado en un sistema diseñado para ajustarse.

Recomendaciones

Para realizar la transición de una arquitectura de una sola VM a una arquitectura horizontal de varias máquinas, debes planificar con cuidado y usar las herramientas adecuadas. Para ayudarte a lograr el ajuste de escala horizontal, considera las recomendaciones de las siguientes subsecciones.

Usar servicios administrados

Los servicios administrados eliminan la necesidad de administrar manualmente el ajuste de escala horizontal. Por ejemplo, con los grupos de instancias administrados (MIG) de Compute Engine, puedes agregar o quitar VMs para ajustar tu aplicación de forma horizontal. Para las aplicaciones alojadas en contenedores, Cloud Run es una plataforma sin servidores que puede ajustar automáticamente tus contenedores sin estado según el tráfico entrante.

Promueve el diseño modular

Los componentes modulares y las interfaces claras te ayudan a ajustar los componentes individuales según sea necesario, en lugar de ajustar toda la aplicación. Para obtener más información, consulta Promueve el diseño modular en el pilar de optimización del rendimiento.

Implementa un diseño sin estado

Diseña aplicaciones para que no tengan estado, lo que significa que no se almacenan datos de forma local. Esto te permite agregar o quitar instancias sin preocuparte por la coherencia de los datos.