Service as Software

Cómo preparar tu infraestructura para picos de tráfico

Fernando Blanco DosilFernando Blanco Dosil

Un pico de tráfico debería ser una buena noticia: significa interés, ventas, atención. Pero para muchas plataformas es justo el momento en que todo se cae, y ese día caro se convierte en el peor en lugar del mejor. Una campaña, una mención en prensa o un lanzamiento pueden multiplicar tu tráfico en minutos.

Prepararse para los picos no es tener servidores gigantes encendidos todo el año por si acaso, eso arruinaría el presupuesto. Es diseñar para que el sistema crezca cuando hace falta y se encoja cuando no. Con un poco de previsión, el pico deja de dar miedo y pasa a ser una oportunidad bien aprovechada.

Conoce tu límite antes del pico

No puedes prepararte para algo que no has medido. Antes de cualquier pico previsible conviene saber cuánta carga aguanta tu sistema actual y dónde se rompe primero. Una prueba de carga que simule el tráfico esperado te lo dice con tiempo de sobra para reaccionar. Llegar al pico sin conocer tu límite es conducir a ciegas.

Conocido el límite, sabes si necesitas reforzar y dónde. A veces el cuello de botella está en un único punto que se arregla en una tarde; otras hace falta un cambio más profundo. En ambos casos, mejor descubrirlo antes que durante.

  • Haz pruebas de carga que simulen el tráfico que esperas en el pico.
  • Activa escalado automático para añadir y quitar recursos según demanda.
  • Usa caché y CDN para servir lo repetido sin tocar el sistema central.
  • Mueve el trabajo pesado a procesos en segundo plano fuera del momento crítico.

Escala automáticamente y paga por lo que usas

La clave moderna para los picos es el escalado automático: el sistema añade recursos cuando la demanda sube y los retira cuando baja. Así no pagas por capacidad ociosa el resto del año ni te quedas corto el día clave. Diseñar tu plataforma para que escale sola es la diferencia entre temer los picos y desearlos.

Para que esto funcione, la aplicación tiene que estar pensada para ello: sin estado pegado a un servidor concreto, con la carga repartible entre varias máquinas. Es una decisión de arquitectura que conviene tomar antes, no improvisar el día del pico.

Protege lo que no puede esperar

No todo tu sistema necesita aguantar el pico igual. Identifica lo crítico, lo que el usuario nota en el momento, y protégelo aislándolo del resto. El trabajo que puede esperar, como informes o sincronizaciones, se aparta a colas que se procesan cuando el pico pasa. Repartir así la carga evita que lo importante caiga arrastrado por lo accesorio.

Más sobre service as software
Fernando Blanco Dosil

Escrito por

Fernando Blanco Dosil

Product Engineer al que le mueve convertir ideas en producto. Escribe sobre desarrollo, datos y cómo llevar proyectos de la chispa a la realidad.

Ver perfil →