¿Qué es un SLA compuesto?
Los sistemas actuales se construyen a partir de muchas piezas interconectadas: balanceadores de carga, bases de datos, APIs de terceros, CDNs y mucho más. Cada una tiene su propio Acuerdo de Nivel de Servicio (SLA, por sus siglas en inglés) expresado como un porcentaje de disponibilidad, por ejemplo 99,9 %. El SLA compuesto (combinado) es la disponibilidad real de todo el sistema una vez que esas piezas trabajan juntas. Esta calculadora combina la disponibilidad de cada componente en una única cifra de extremo a extremo y la traduce en tiempo de caída concreto por día, mes y año.
Topología en serie frente a topología en paralelo
La forma en que se conectan los componentes cambia el resultado de manera drástica. En una cadena en serie (con dependencias), todos los componentes deben estar disponibles para que la solicitud tenga éxito, así que las disponibilidades se multiplican: el total siempre es inferior al eslabón más débil. La disponibilidad compuesta en serie es:
$$A_{\text{total}} = \text{A}_1 \times \text{A}_2 \times \text{A}_3 \times \text{A}_4$$En una configuración en paralelo (redundante), el sistema sigue operativo mientras al menos una ruta funcione, de modo que lo que se multiplican son las probabilidades de fallo; la redundancia eleva la disponibilidad por encima de la de cualquier componente individual:
$$A_{\text{total}} = 1 - \left(1-\text{A}_1\right)\left(1-\text{A}_2\right)\left(1-\text{A}_3\right)\left(1-\text{A}_4\right)$$
Cómo usarla
Elige tu topología y luego introduce el porcentaje de disponibilidad de cada componente (por ejemplo, 99,95). Se admiten hasta cuatro componentes; deja en blanco los campos opcionales si quieres combinar menos. El resultado muestra la disponibilidad compuesta junto con el tiempo de caída previsto en los periodos más habituales.
Ejemplo práctico
Supongamos que tu aplicación depende de tres componentes en serie, cada uno con un 99,9 %. Pásalo a fracciones:
$$0{,}999 \times 0{,}999 \times 0{,}999 = 0{,}997002999$$es decir, 99,7003 %. Eso equivale a un tiempo de caída de alrededor del 0,2997 %, unas 26,26 horas al año. Encadenar en serie servicios de "tres nueves" solo te deja con "dos nueves" en conjunto, y por eso precisamente importa tanto la redundancia.
Preguntas frecuentes
¿Por qué mi resultado en serie es menor que cada valor introducido? Porque cada dependencia añade una probabilidad de fallo; multiplicar números menores que 1 siempre reduce el total.
¿De verdad la configuración en paralelo mejora tanto la disponibilidad? Sí: dos rutas independientes al 99 % dan \(1 - (0{,}01 \times 0{,}01) = 99{,}99\,\%\), siempre que los fallos sean realmente independientes.
¿Qué significa un 99,9 % en tiempo? Unas 8,77 horas de caída al año, o aproximadamente 43,8 minutos al mes.