Junio de 2020 - Quizás
el mayor impacto en las operaciones
es la disponibilidad, y es debido a la abrupta migración de
consumidores y empleados a experiencias digitales. Un porcentaje
significativo de organizaciones luchó con el acceso remoto mientras los
empleados se mudaban de la oficina al hogar.
Lograr
una alta disponibilidad no es solo una cuestión de insertar un
balanceador de carga en la ruta de datos. Eso es parte de la ecuación,
pero es solo uno de los
pasos necesarios para garantizar que una aplicación o sitio web
permanezca disponible.
Lo primero que debe hacer es responder dos preguntas:
• ¿Cómo distribuir el tráfico entre servidores para una alta disponibilidad?
• ¿Qué nivel de comprobación de estado se requiere para validar adecuadamente la disponibilidad de un servidor?
¿Cómo distribuir el tráfico entre servidores
para alta disponibilidad?
Si
deseamos hacer que una aplicación tradicional (cliente-servidor, web de
tres niveles) este muy disponible, debemos comprender los patrones de
uso desde una perspectiva
completamente diferente. Esto se debe a que un "servidor" de fondo es
responsable de ejecutar toda la lógica empresarial, como iniciar sesión u
ordenar un producto, todo el mismo "servidor".
Como
cada función empresarial tiene diferentes requisitos de cómputo,
memoria, red y datos. Eso significa que cada función pone una carga
diferente en el "servidor".
Una sola instancia de "servidor" puede verse sobrecargado rápidamente
simplemente al dirigirle demasiadas solicitudes con muchos recursos.
La
mejor manera de optimizar la distribución de solicitudes para
garantizar la disponibilidad de las aplicaciones tradicionales es
utilizar un algoritmo basado en menos
conexiones. Esto mantendrá la carga distribuida entre varias instancias
de "servidores", lo que mantendrá estas solicitudes disponibles.
Para
las aplicaciones modernas (basadas en microservicios), sigue siendo una
buena idea utilizar un algoritmo basado en menos conexiones porque
algunas solicitudes de
la misma función pueden consumir más recursos que otra, pero el tráfico
está naturalmente equilibrado, por lo que casi cualquier algoritmo
servirá para mantener todos los "servidores". " disponible.
¿Qué nivel de comprobación de estado se requiere para validar adecuadamente la disponibilidad de un servidor?
Medidas de observación:
o
Conectividad de red
o
Capacidad de transporte
o
Plataforma HTTP
o
Disponibilidad de la aplicación
Los
cuatro componentes de la observación son importantes. Si se pierde la
conectividad de la red, el resto pierde importancia. Por lo tanto, es
importante vigilar y
verificar las cuatro medidas.
No
importa cuál sea la arquitectura de la aplicación. Todas las
aplicaciones dependen de la red, el transporte y las capas de la
plataforma. Donde la arquitectura hace
la diferencia es en la capa de la aplicación porque la arquitectura
puede restringir la forma en que se determina si la aplicación funciona o
no.
Siempre
debe pedir la forma de "verificar el estado" de la aplicación durante
el desarrollo. La "verificación de estado ofrece a los desarrolladores
una forma fácil
de verificar que la aplicación funciona correctamente. Esto puede
incluir una funcionalidad que verifica la conectividad a recursos
externos como datos o API de socios.
Debido
a que la falla de cualquiera de estos componentes puede hacer que la
aplicación no esté disponible o no responda, es importante verificar la
disponibilidad de
todos los componentes.
La alta disponibilidad es más difícil de lo que parece
A
menudo se cree que la alta disponibilidad es tan simple como clonar un
servidor y colocar un balanceador de carga frente a él. Pero la realidad
es que hay consideraciones
serias, medidas y preparación necesarias para garantizar que una
aplicación esté altamente disponible. No se trata solo de asegurarse de
que haya instancias disponibles; se trata de asegurarse de que todas sus
aplicaciones dependientes estén disponibles y
distribuir las solicitudes de una manera que no sobrecargue a ninguna
instancia determinada.
No hay comentarios:
Publicar un comentario