Escalabilidad horizontal: pros y contras – ADN Cloud

escalabilidad horizontal

Tiempo de lectura: 3 minutos

Necesitamos permitir que nuestra infraestructura crezca y se reduzca para satisfacer el tráfico y la demanda en términos de volumen de solicitudes por atender. Con este propósito, la escalabilidad horizontal es un enfoque cloud común que aprovecha su hardware básico. Esta forma de ampliación de escala tiene importantes ventajas, aunque también algunos inconvenientes que hay que tener en cuenta.






New Call-to-action





¿Qué es la escalabilidad horizontal?

La escalabilidad horizontal es una tecnología que debe utilizarse, siempre que se requiera una alta disponibilidad de servicios (de servidor). Implica:

  • Agregar más unidades de procesamiento al servidor o base de datos.
  • Aumentar el número de nodos en el clúster.
  • Reducir las responsabilidades de cada nodo miembro al ampliar el espacio clave.
  • Proporcionar puntos finales adicionales para las conexiones de los clientes.

El escalado horizontal ha sido muy utilizado para aplicaciones y servicios. Internet y los servicios web particulares han impulsado el uso de este escalado, tan popular entre la mayoría de las grandes empresas que proporcionan servicios web conocidos como Google (Gmail, YouTube), Yahoo, Facebook, eBay o Amazon, entre otras.

¿Cuáles son las ventajas de la escalabilidad horizontal?

Entre los beneficios de la escalabilidad horizontal destacan dos:

  1. Escala infinita. En teoría, si una aplicación puede escalar correctamente de manera horizontal, puede usar un número infinito de instancias para permitir un crecimiento ilimitado y atender un número infinito de solicitudes.
  2. Herramienta Los proveedores de servicios en la nube cuentan con herramientas para que sus usuarios puedan usar esta forma de escalabilidad desde el primer día. No se necesita un amplio conocimiento de cómo configurar todas las opciones ni de cómo equilibrar el tráfico, ya que herramientas actuales hacen que sea muy fácil escalar una aplicación.

¿Qué desventajas tiene la escalabilidad horizontal?

Pese a las ventajas de la escalabilidad horizontal, esta opción no está exenta de inconvenientes. Los dos más relevantes son los relacionados con:

  • Diseño arquitectónico. Diseñar una aplicación correctamente es un desafío por la cantidad de elementos diferentes que hay que tener en cuenta, muchos de los cuales están relacionados con la conservación del estado (como las cookies) y la gestión de la seguridad. Además, se requiere un diseño arquitectónico consistente para crear una aplicación que sea capaz de escalar horizontalmente al 100%. Aunque la escala horizontal es un objetivo que todos aspiran a alcanzar, no todos pueden hacerlo.
  • Bases de datos y persistencia. Una aplicación necesita una base de datos donde almacenar información. Dependiendo del tipo de base de datos que se desee utilizar, esto puede requerir un trabajo de arquitectura adicional para garantizar que no solo se escala la aplicación, sino que también se escala la capa de datos detrás de ella. Nuevamente, esta no es una tarea simple, una que se complica aún más cuando los datos se expanden en diferentes regiones, ubicaciones y niveles.

Cuando se diseña una aplicación, debe incluirse una metodología de escala en el diseño. De esta forma, puede planificarse la gestión de una mayor carga en el sistema, cuando llegue el momento. Esto no debe responder a la improvisación, ni llevarse a cabo en el último momento, sino que es un concepto que hay que integrar en la planificación, englobándolo como parte de la arquitectura inicial y su diseño.

La escalabilidad horizontal tiene muchos beneficios siempre que se tenga claro cómo abordar los desafíos que el diseño arquitectónico puede plantear. A veces, se llegará a la conclusión de que la escalabilidad vertical es la mejor opción, pero, también en esos casos, se debe tener en cuenta los inconvenientes que conlleva.

 

Créditos fotográficos: Probuxtor






New Call-to-action