El caso

El sitio está en línea. Pero en Tokio, es lento.

La tienda de Isaac corre en São Paulo y es rápida para quien compra desde Brasil. Empezó a vender café a Japón, y allá cada clic parece tardar una eternidad. El servidor es el mismo. Lo que cambió fue la distancia.

18.500 kmSão PauloTokio“Cargando…”

Este post parte de los conceptos de Fundamentos de la nube y prepara el terreno para Regiones y zonas.

El concepto

Qué es la latencia

La latencia es el tiempo que un dato tarda en ir de un punto a otro. En la práctica, lo que más importa es el tiempo de ida y vuelta (round-trip time, o RTT): el pedido sale del navegador, llega al servidor y la respuesta vuelve.

Es como mandar una pregunta por correo. No importa el tamaño de la carta: si el destinatario vive al otro lado del mundo, la respuesta tarda en llegar. Escribir más rápido no lo resuelve; la distancia sigue ahí.

La latencia se mide en milisegundos (ms). Parece poco, pero una página suele hacer decenas de idas y vueltas hasta aparecer completa, y los milisegundos se suman.

El límite

La culpa es de la física

Los datos viajan como luz dentro de la fibra óptica, a unos 200.000 km/s, dos tercios de la velocidad de la luz en el vacío. Es rápido, pero no es instantáneo: cada 1.000 km cuestan 5 ms solo de ida, o 10 ms de ida y vuelta.

São PauloVirginia · 77 msLondres · 95 msTokio · 185 ms
Desde São Paulo, el mínimo teórico de ida y vuelta hasta cada ciudad.
Desde São Paulo hastaDistanciaMínimo de ida y vuelta (round-trip)
Río de Janeiro361 km4 ms
Virginia (EE. UU.)7.651 km77 ms
Londres9.496 km95 ms
Tokio18.534 km185 ms

Ninguna optimización de código vence a la física. Para reducir esa parte de la latencia, solo hay un camino: acortar la distancia.

No confundas

Latencia × ancho de banda

Las dos suelen llamarse "velocidad de internet", pero miden cosas distintas.

Latencia (latency)

“¿Cuánto tarda el dato en llegar?”

Ejemplo
Un clic en Tokio espera la respuesta de un servidor en São Paulo.
Foco
Distancia y tiempo de respuesta, en milisegundos.

Ancho de banda (bandwidth)

“¿Cuántos datos pasan al mismo tiempo?”

Ejemplo
Descargar un video de 4 GB con una conexión de 100 Mbps.
Foco
Volumen por segundo, en Mbps o Gbps.

Piensa en una autopista. El ancho de banda es la cantidad de carriles: cuántos autos pasan al mismo tiempo. La latencia es el tiempo del viaje de un extremo al otro. Ensanchar la carretera deja pasar más autos, pero no acorta el viaje.

En la práctica

Cómo medir

La forma más simple es el comando ping, que mide el tiempo de ida y vuelta hasta una dirección:

text
$ ping exemplo.com
64 bytes from 93.184.215.14: icmp_seq=0 ttl=56 time=118 ms

En sistemas reales, nadie mira una sola medición. El tiempo varía en cada pedido, y el promedio engaña: unos pocos pedidos muy lentos quedan escondidos detrás de muchos rápidos. Por eso se usan los percentiles:

p50 (mediana)

La mitad de los pedidos fue más rápida que ese valor. Es la experiencia típica.

p95

El 95% de los pedidos fue más rápido. Muestra los casos malos comunes.

p99

Solo el 1% fue más lento. En millones de pedidos, ese 1% sigue siendo mucha gente.

La solución

Cómo reducirla

Si la distancia es el problema, la solución es llevar el contenido cerca de quien lo usa, y hacer menos viajes.

Región más cercana (closest region)

Ejecutar la aplicación en la región más cerca de la mayoría de los usuarios. Es el tema de Regiones y zonas.

CDN

Una red de servidores repartidos por el mundo guarda copias del contenido estático (imágenes, videos, scripts) cerca de cada usuario.

Caché

Guardar respuestas ya calculadas para no repetir el trabajo ni el viaje en cada pedido.

Menos idas y vueltas (fewer round trips)

Juntar varios pedidos en uno. Cada ida y vuelta evitada es latencia ahorrada.

Las CDN funcionan con puntos de presencia (edge locations) en decenas de ciudades. Quien está en Tokio recibe las imágenes de la tienda desde un servidor en Tokio, y no desde São Paulo.

OregónVirginiaSão PauloLondresFráncfortJohannesburgoSingapurTokioSídney
Una CDN reparte copias del contenido por puntos como estos.

Los proveedores ofrecen CDN propias o de socios. Algunos ejemplos: Amazon CloudFront en AWS, Azure Front Door en Azure y Cloud CDN en Google Cloud.

Términos clave

Seis términos para recordar

Toca la tarjeta para ver la definición.

Prueba rápida

Tres preguntas, estilo examen

01

Una empresa duplicó el ancho de banda, pero los usuarios del otro lado del mundo siguen viendo el sitio lento. ¿Qué lo explica?

02

Un sitio de videos tiene usuarios en varios continentes. ¿Qué servicio reduce la latencia para entregar los videos?

03

El tiempo de respuesta promedio de una API es de 80 ms, pero algunos usuarios se quejan de lentitud. ¿Qué métrica revela el problema?


La latencia aparece en cualquier certificación de nube: AWS, Azure, Google Cloud u Oracle Cloud. Es ella la que justifica regiones cerca de los usuarios, CDN y cachés. Los nombres de los servicios cambian; la física es la misma.