No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

¿Qué es el escalamiento?

14/19
Recursos

Aportes 16

Preguntas 6

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

RESUMEN DE CLASE

Qué es el escalamiento?

Escalamiento vertical.

Es cuando tenemos un servidor y eventualmente el servidor empieza a colapsar, una forma de solucionar el problema es incrementar:

  • CPU

  • RAM

  • Disk

  • Problemas:

    • Costos
    • En un black friday tu puedes escalar la aplicacion, pero algunos provedores no permiten desescalar.
    • Disponibilidad -> Solucion, Escalamiento Horizontal

Escalamiento horizontal

Soluciona el problema de la disponibilidad. Se tienen varias instancias del mismo servidor.
Como se tienen distintos servidores ahora se necesita de un LOAD BALANCER

LOAD BALANCER -> Tiene conocimiento de nuestras instancias/servidores (al conjunto de servidores se denomina Clouster). Si un nodo(instancia) se cae, el load balancer se encarga de desviarla. Distribuye las peticiones.

  • Si tenemos la base de datos local en cada servidor va haber un problema dado que no se tienen sincronizados los datos de las distintas bases de datos de los servidores. SOLUCION Gestionar la base de datos fuera de estos servidores. Quizas como un servidor aparte que sirva como DB.

Si les gusto mi aporte pueden darme ❤️

Recomendación

Les recomiendo tomar el audio-curso del Pelado Nerd donde trata más a fondo el tema del escalamiento en servidores. 👇
Audiocurso de Fundamentos de Arquitectura de Alta Concurrencia

Apuntes en notion 👉🏽 notion

  • la en el servidor, todo se cae.
  • El escalamiento horizontal consiste en la creación de instancias paralelas del servidor con las mismas características y recursos, pero son un servidor diferente.
    • Es menos costoso que escalar verticalmente.
    • Es mas fácil hacer downgrade.
    • Si un servidor falla, está otro para realizar la carga de trabajo para que el sistema no caiga.
    • Los request son distribuidos por un Load Balancer, que tiene conocimiento de los servidores conectados a la red.
    • Un conjunto de servidores usualmente es conocido como cluster.
    • Requiere una configuración más compleja.
  • En el escalamiento horizontal, si se tiene la base de datos corriendo en el mismo backend de nuestros servidores, y el usuario recarga la página, el load balancer puede enviarlo a otro servidor, cuya base de datos no está sincronizada con el primer servidor.
    • Este problema no ocurre si tu base de datos está desplegada en un servicio proveedor, ni con el escalamiento vertical.
    • Es posible resolverlo con replicación.

Todo muy bonito, ¿Pero como se ve un balanceador de carga?

Hola tú, si te gustaría tener una idea un poquito más en detalle de como se ve un balanceador de carga, te comento que hay varios de estos, incluso hay varias soluciones cloud en las que se puede hacer uso de estos balanceadores, tal como Elastic Load Balancing from AWS o GOBETWEEN

  • El escalamiento es el proceso de aumentar la capacidad de un sistema para manejar una mayor carga de trabajo. Cuando se habla de servidores, el escalamiento puede referirse a la adición de más hardware o recursos a un servidor o a la distribución de la carga de trabajo entre varios servidores.

  • Hay dos tipos principales de escalamiento: horizontal y vertical. El escalamiento horizontal implica añadir más servidores para distribuir la carga de trabajo entre ellos. Esto se puede hacer de manera transparente para el usuario final, y puede ser una buena opción para sistemas que tienen picos de tráfico impredecibles.

  • El escalamiento vertical, por otro lado, implica añadir más recursos a un servidor existente para aumentar su capacidad. Esto puede incluir cosas como añadir más memoria o procesadores a un servidor o mejorar su conectividad a Internet.

  • El escalamiento vertical puede ser más sencillo de implementar, pero puede ser menos flexible que el escalamiento horizontal y puede llegar a un punto en el que no sea posible añadir más recursos a un servidor.

  • Un Load Balancer (o equilibrador de carga) es un dispositivo o software que se utiliza para distribuir la carga de trabajo entre varios servidores. En el escalamiento horizontal, el Load Balancer juega un papel clave al asegurar que la carga de trabajo se distribuya de manera equitativa entre todos los servidores disponibles, evitando que algunos servidores se saturen mientras que otros tienen capacidad disponible.

Vertical = Más servidores
Horizontal = Más nodos

El escalamiento horizontal está en Platzi en sus reproductores de video, en el icono de la tuerca tenemos ‘Server A, Server B, Server C’ 😄

No pensé que el mundo del backend fuera tan amplio, ya me estresé

este curso esta demaciado bueno

RESUMEN DE CLASE:

ESCALAMIENTO VERTICAL:
El escalamiento vertical es ampliar nuestros recursos, básicamente la CPU, RAM, Disk, para que ocurran saturaciones por muchos usuarios que están en nuestra aplicación, es básicamente aumentar los recursos de la maquina, es muy fácil aumentar nuestros servicios ya que solo es pagarle mas a los que nos están alojando nuestro servidor en este caso el proveedor.

ESCALAMIENTO HORIZONTAL:
Soluciona el problema de disponibilidad, básicamente es tener varias instancias del mismo servidor es decir si se cae nuestro primer servidor por muchos request que pidan van a estar otros servidores sosteniendo todos los request que hagan los clientes pero necesitamos un Load Balancer que basicamente es para repartir toda la información de los request a los dos servidor que todo este pues equilibrado, basicamente distribuye las peticiones.

Escalamiento

Ajustar un sistema para manejar más o menos carga.

Escalamiento vertical: Aumentar recursos en un solo servidor.

Escalamiento horizontal: Agregar más servidores para distribuir la carga.

Load Balancer: Distribuye las solicitudes de los usuarios entre los servidores del clúster para evitar que un servidor se sobrecargue.

Gestión de base de datos: Puede realizarse en un servidor aparte para evitar problemas de sincronización de datos entre los servidores escalados.

me gusto la explicacion

Escalamiento vertical: Aumentar los recursos del servidor.
Escalamiento horizontal: Platzi y sus diferentes servers en el reproductor de video.

Es algo interesante la funcionalidad de un escalamiento tanto vertical como horizontal. Me alegro que la industria a veces usa un respaldo por si la informacion se pierde por si el servidor comienza a fallar. Es algo curioso. Suerte que cada cosa que hice un una empresa, dejaba un respaldo por si se perdia todo.

un servidor Nass y listo
de nada
uwu