El escalamiento se refiere al aumento (o disminución) de la capacidad de los recursos disponibles en el backend para mejorar su rendimiento o disponibilidad. Si bien el escalamiento es inherente a la arquitectura, el diseño y la implementación del backend, se deben considerar varios aspectos fundamentales.
El rendimiento aquí se refiere a la rapidez con la que la aplicación web puede responder a una solicitud; esto incluye la latencia, la velocidad, la capacidad de procesamiento y el uso de recursos.
Ajuste vertical
El escalamiento vertical se refiere al aumento de los recursos en un servidor. Esto puede implicar reemplazar un servidor central de aplicaciones por una máquina más potente para una arquitectura basada en servidores. Para arquitecturas sin servidores, microservicios o basadas en la nube, esto puede referirse a actualizar los recursos asignados, por ejemplo, aumentar la memoria disponible o seleccionar una máquina virtual de nivel más alto.
Escalamiento horizontal:
El escalamiento horizontal se refiere a la adición de más servidores y recursos paralelos. La arquitectura subyacente y la aplicación deben optimizarse para manejar este tipo de escalamiento. Por ejemplo, es posible que se necesite balanceo de cargas adicional para distribuir solicitudes en una arquitectura basada en el servidor. En el caso de una arquitectura sin servidores en un entorno de nube, como Cloud Functions, este tipo de escalamiento se puede manejar con transparencia sin ninguna configuración adicional.
Escalamiento y distribución regionales
El escalamiento regional se refiere a la distribución de servicios en varias regiones geográficas. La distribución de los servicios o los acercamientos a los usuarios puede reducir la latencia y mejorar el rendimiento general de la aplicación.
Considera la distribución y la diversidad regionales como parte de la arquitectura, en especial si no usas un proveedor de servicios en la nube que lo maneje con transparencia, como en una arquitectura sin servidores basada en la nube. Considera cómo el almacenamiento de datos de tu aplicación puede verse afectado por la distribución regional, en especial en lo relativo a la coherencia de los datos.
Cuando proceses y almacenes datos a escala global, ten en cuenta los requisitos regulatorios o la legislación que se aplica a tu sistema, en especial en relación con el procesamiento de datos y el almacenamiento de datos.