#LaNube; Escalabilidad vertical y horizontal de aplicaciones, ¿Qué es esto?

El día de ayer hablamos sobre la nube pública y la nube privada, hoy vamos a hablar sobre la escalabilidad vertical y horizontal así que empecemos.


¿Qué es la escalabilidad?

El termino escalabilidad en entornos de Cloud Computing se refiere a aumentar la capacidad de una infraestructura para permitir una mayor carga de trabajo.

Por ejemplo, podemos tener nuestra aplicación en un servidor lo suficientemente potente como para soportar 1000 clientes nuestros conectados al mismo tiempo, pero ¿Qué va a pasar cuando se conecten 2000?

Ahí es donde entra en juego la escalabilidad ya que el sistema tiene que aumentar su potencia cuando así se requiera y disminuirla cuando no se necesite para ahorrar costos de proceso innecesario.


Vale ya entendí, pero… ¿Qué es la escalabilidad vertical?

La escalabilidad vertical hace referencia a aumentar potencia a nuestro servidor de forma única, por ejemplo, si nosotros tenemos un servidor de 32 GB de RAM lo escalamos a 64 GB, a 128 GB y así hasta llegar al límite permitido por el hardware.

No solo la memoria RAM se escala, podemos agregar núcleos de procesadores, almacenamiento, etc.

El problema con esto es que en algún momento va a llegar un límite en el que no podremos agregar más cosas al mismo servidor y si nuestra aplicación necesita más potencia pues se verá afectada.

El beneficio es que es extremadamente sencillo de configurar en los paneles de control de los principales proveedores de Cloud Computing si es que no lo hacen ya de forma automática.


Ok, esa escalabilidad tiene límite ¿Y la horizontal?

Para solventar los problemas de la escalabilidad vertical y poder agregar más potencia sin importar el límite del hardware se inventó la escalabilidad horizontal.

Esta no agrega más potencia al servidor que estemos usando, lo replica cuantas veces sea necesario, por ejemplo, si nuestro servidor tiene 32GB de RAM, se ejecuta otro con otros 32GB y ahora ya tenemos 64GB para nuestra aplicación.

Igual que en la escalabilidad anterior se escala también el procesador y todos los componentes de nuestro servidor, la diferencia es que aquí la escalabilidad es teóricamente ilimitada, ya que solo se van agregando instancias a nuestra infraestructura.

Una desventaja de esto es que al menos en las máquinas virtuales requiere de mayor experiencia con la nube para hacerlo funcionar de forma óptima.

Aprender a configurar esto de la escalabilidad puede hacer la diferencia entre pagar lo justo a nuestro proveedor o desperdiciar nuestro dinero.

Hasta aquí el post del día de hoy, nos vemos mañana con uno nuevo, si te ha gustado compártelo con tus amigos por medio de las redes sociales, saludos.