wandres.dev
QUÉ ES EL EDGE · la red global

Qué es el edge

El edge es la red global de cientos de ubicaciones (PoPs) repartidas por el mundo. Qué es un PoP, cómo anycast enruta cada peticion a la más cercana y qué significa de verdad que tu código corra en todas a la vez.

⏱ 12 min

Cuando alguien dice que su código corre en el edge, suena a metáfora. No lo es. El edge es un hecho físico: cientos de instalaciones reales, con máquinas reales, repartidas por ciudades de todo el planeta. Tu Worker no vive en un servidor; vive en toda esa malla a la vez. Esta lección desmonta la palabra edge hasta que deje de ser un eslogan y se convierta en un modelo mental preciso, con nombres concretos para cada pieza.

🎯 Al terminar esta lección sabrás
  • Definir qué es un PoP y qué compone la red global de Cloudflare.
  • Entender cómo anycast lleva cada petición a la ubicación más cercana.
  • Interiorizar qué significa desplegar código a toda la red a la vez.
  • Distinguir el edge de una CDN clásica y de una nube regional.

La red: qué es un PoP

Edge significa literalmente borde: el borde de la red, el punto más cercano al usuario antes de adentrarse en internet. Ese punto tiene nombre técnico: un PoP, o Point of Presence.

Un PoP es una instalación física —racks de servidores dentro de un centro de datos— conectada directamente a los proveedores de internet de esa zona. Cloudflare opera una red presente en más de 330 ciudades de más de 120 países. La cifra exacta cambia cada trimestre, pero la idea no: hay un PoP a pocos milisegundos de casi cualquier usuario conectado del mundo.

🏢

Instalación física

Máquinas reales en un centro de datos real, en una ciudad concreta, encendidas y esperando peticiones.

🔌

Bien conectado

Enlazado con los ISP locales, para que el tráfico de la zona entre y salga por el camino más corto.

🧬

Idéntico a los demás

Cada PoP corre el mismo software y tu mismo código. No hay un PoP principal: todos son iguales.

🌍

Cientos, no unos pocos

Más de 330 ciudades. La densidad es el producto: cuanto más cerca de cada usuario, mejor.

Esta homogeneidad es más importante de lo que parece. Como cada PoP es intercambiable con cualquier otro, tú no programas cientos de servidores distintos: escribes una función y la red garantiza que exista, idéntica, en todos ellos. El concepto de servidor primario desaparece.

Para dimensionar la escala, tres cifras ayudan a fijar la imagen:

  • Más de 330 ciudades con presencia física, en más de 120 países.
  • A menos de 50 milisegundos de la inmensa mayoría de la población conectada del planeta.
  • Una sola red lógica: no hay regiones que elegir ni zonas que combinar, es un continuo global.

Un matiz importante: no todos los PoPs son idénticos en capacidad —los grandes hubs manejan mucho más tráfico—, pero sí lo son en función. Desde el punto de vista de tu código, cualquier PoP puede ejecutarlo por completo. No hay un PoP maestro ni una jerarquía que gestionar.

Anycast: una dirección, muchos lugares

Si tu código está en cientos de sitios, surge una pregunta inevitable: cuando un usuario hace una petición, quién decide a qué PoP va. La respuesta es una técnica de red llamada anycast.

En el enrutamiento normal (unicast), una dirección IP identifica una máquina concreta. Con anycast, la misma dirección IP se anuncia desde todos los PoPs a la vez. Los routers de internet, siguiendo el protocolo BGP, entregan cada paquete a la instancia topológicamente más cercana. El usuario no elige nada, ni configura nada: la propia red lo lleva al borde más próximo.

flowchart LR
U1[Usuario en Madrid] --> P1[PoP de Madrid]
U2[Usuario en Tokio] --> P2[PoP de Tokio]
U3[Usuario en Lima] --> P3[PoP de Lima]
P1 --> W[Tu mismo Worker]
P2 --> W
P3 --> W
style W fill:#a6e3a1,color:#11111b

Tres usuarios en tres continentes escriben la misma URL, con la misma IP, y cada uno acaba atendido por el PoP de su ciudad. Ejecutan el mismo Worker, pero cada uno cerca de sí mismo.

# La misma direccion responde desde lugares distintos segun quien pregunte.
# El campo de la respuesta suele revelar el PoP que te atendio (colo).
curl -s https://cloudflare.com/cdn-cgi/trace | grep colo
# colo=MAD   -> te atendio Madrid
# colo=NRT   -> te atendio Tokio
💡
Anycast también es defensa

Anunciar una IP desde cientos de lugares no solo acerca el código al usuario: reparte la carga. Un ataque de denegación de servicio se diluye entre todos los PoPs en vez de concentrarse en uno, y el tráfico legítimo de cada región se queda en su región. La misma técnica que da baja latencia da resiliencia. Cercanía y robustez son, en el edge, dos caras de la misma moneda.

📝
BGP, el mecanismo por debajo

Anycast no es magia propietaria de Cloudflare: se apoya en BGP, el protocolo con el que las redes de internet se anuncian rutas entre sí. Cuando cientos de PoPs anuncian la misma IP, cada red vecina elige la ruta que le parece más corta según su propia topología. El resultado emergente es que cada usuario llega al PoP más cercano en términos de red, aunque nadie lo haya decidido de forma central. Es enrutamiento por consenso distribuido, no por un director de orquesta.

Desplegar a toda la red a la vez

Aquí está el cambio mental de fondo. En una nube tradicional, desplegar significa elegir una región —us-east-1, por ejemplo— y colocar tu servidor ahí. En el edge no eliges región: haces un despliegue y tu código se propaga a todos los PoPs en segundos.

# Un solo comando. No hay region que elegir:
# el Worker queda disponible en cientos de ciudades a la vez.
wrangler deploy

Las consecuencias son profundas y conviene enunciarlas una a una:

  • No hay un lugar donde vive tu app. Vive en todos. La pregunta deja de ser en qué región y pasa a ser dónde están los datos.
  • La escala geográfica es gratis. No replicas manualmente en otro continente: ya estás en todos desde el primer despliegue.
  • La cercanía es el estado por defecto, no una optimización que añades después con capas de caché.
  • No administras máquinas. No hay que dimensionar, parchear ni vigilar servidores: la red se encarga del sustrato.

Dicho de otro modo, el despliegue en el edge colapsa en un solo paso lo que en una nube regional eran varias decisiones separadas:

  • El dónde, que era elegir región, pasa a ser en todas partes.
  • El cuánto, que era dimensionar instancias, lo gestiona la red por ti.
  • El cómo llegar, que era montar balanceo geográfico, viene incluido en anycast.

Esta última idea desmonta buena parte del trabajo operativo tradicional. En el edge no existe la noción de escalar horizontalmente añadiendo instancias, porque la instancia no es la unidad: la unidad es tu función, y ya está en todas partes.

Lo que en una nube regional era trabajo constante, en el edge simplemente no existe:

🗺️

Elegir región

No hay us-east-1 ni eu-west-1 que sopesar. Tu código está en todas a la vez.

📦

Dimensionar instancias

No decides cuántas máquinas ni de qué tamaño; la red absorbe la carga por ti.

🌐

Replicar entre zonas

No montas copias en otro continente: el primer despliegue ya es global.

🩹

Parchear servidores

No mantienes sistemas operativos ni runtimes; el sustrato no es asunto tuyo.

💡
Global por defecto, no por proyecto

En el modelo regional, ir global es un proyecto en sí mismo: nuevas regiones, replicación, balanceadores geográficos. En el edge es el punto de partida. Esa inversión —global por defecto, en vez de global como esfuerzo— es quizá el cambio más liberador para quien diseña sistemas pensando en usuarios de todo el mundo.

El edge no es solo una CDN

Antes de la síntesis, conviene fijar la distinción con dos ejemplos concretos:

  • Una CDN puede servirte una imagen cacheada de un producto; no puede decidir qué producto mostrarte según quién eres.
  • El edge puede autenticarte, consultar tu carrito y componer la página personalizada, todo en el PoP de tu ciudad.
El edge convierte la red en un ordenador global

Es tentador pensar en el edge como una CDN con esteroides, pero la diferencia es de categoría, no de grado. Una CDN clásica solo puede hacer una cosa cerca del usuario: entregar bytes que alguien guardó antes. Es una caché distribuida, pasiva por naturaleza. El edge de Cloudflare ejecuta lógica arbitraria cerca del usuario: puede autenticar, transformar, decidir, llamar a una base de datos, invocar un modelo de IA, componer una respuesta a medida. Deja de ser un almacén distribuido para volverse un ordenador distribuido. Y hay una idea aún más sutil: como cada PoP es idéntico y corre tu mismo código, no programas cientos de servidores distintos, programas una función y la red se encarga de que exista en todas partes. Desaparecen del mapa mental conceptos que dominaban el diseño de sistemas —en qué región despliego, cómo replico entre zonas, qué servidor es el primario, cuántas instancias levanto— porque el edge los resuelve por construcción. El precio de esa magia es una restricción que exploraremos en las próximas lecciones: si el compute está en todas partes, los datos no pueden seguir en un solo sitio sin arruinar la ventaja de la cercanía. Ese es exactamente el problema que abre el resto del track. Pero el punto de partida es este: el edge no acerca contenido al usuario, acerca la computación misma. Una CDN te acerca lo que ya calculaste; el edge te deja calcularlo ahí. Esa es la palabra que hay detrás del eslogan, y entenderla es haber entendido de qué va toda la plataforma.

⚔️ Piensa como la red
  1. Ejecuta curl -s https://cloudflare.com/cdn-cgi/trace | grep colo y averigua el código de tu PoP más cercano. Búscalo: casi seguro es tu ciudad o una muy próxima.
  2. Explica con tus palabras cómo anycast logra que la misma IP lleve a cada usuario a un PoP distinto.
  3. Contrasta: una CDN clásica sirve bytes guardados; el edge ejecuta código. Da un ejemplo de algo que solo el segundo puede hacer.
  4. Anota qué supuesto de la nube regional —elegir región, replicar entre zonas, dimensionar instancias— deja de tener sentido en el edge.