Archivo de la etiqueta: escalabilidad

AAP Bloque 1.2 Ejercicio 1 – Escalabilidad en sistemas distribuidos

Discutir cuáles son los principales obstáculos a la escalabilidad en un sistema distribuido.

Se dice que un sistema es escalable si al expandirse es capaz de lograr un mejor rendimiento sin perder calidad de servicio.

Algunos ejemplos de escalabilidad:

  • Si tenemos un problema computacionalmente complejo que se está resolviendo en varias máquinas, si añadimos más máquinas, va a tardar menos en resolverse.
  • Si un servidor web que recibe 100 peticiones por minuto pasa a recibir 1000 peticiones por minuto y el tiempo de respuesta no se ve sacrificado.

Se tiende a pensar que un sistema distribuido es por definición escalable, pero esto no siempre es así ya que la parte de expansión sí se cumple, pero la de mejorar el rendimiento y no perder calidad de servicio no siempre se cumple. Esto sucede por diversas causas:

  • La latencia NO es nula: al añadir más nodos a una red distribuida, se van a introducir más retardos en la comunicación.
  • El ancho de banda NO es infinito: puede llegar a pasar que uno de los nodos de la red se sature por exceso de tráfico.
  • La red NO es homogénea: cada tramo de la red puede tener velocidades distintas, luego si tenemos a priori una red de alta velocidad y empezamos a añadir nodos cuya conexión es mucho más lenta, esto va a repercutir en el desempeño de la red. Asimismo puede ocurrir que se usen protocolos de red distintos, por lo que a más variedad, más latencia se tendrá.