English· Español· Deutsch· Nederlands· Français· 日本語· ქართული· 繁體中文· 简体中文· Português· Русский· العربية· हिन्दी· Italiano· 한국어· Polski· Svenska· Türkçe· Українська· Tiếng Việt· Bahasa Indonesia

un

invitado
1 / ?

Cada PoP Propiedad de una Celda del Plano

Trazado de Voronoi

Coloque N puntos (PoPs: Puntos de Presencia) en un plano. Dibuje límites de región de manera que cada punto en el plano esté asignado al más cercano PoP. El resultado es un diagrama de Voronoi: el plano se divide en N celdas, una por PoP, cada una conteniendo todos los puntos más cercanos a su PoP que a cualquier otro.

Geometría de CDN: cada solicitud de usuario se dirige al PoP más cercano. Cada PoP sirve una celda del plano geográfico. Los límites de la celda son los bisectores perpendiculares de las líneas entre PoPs vecinos.

Lectura geométrica:

- Agregar un PoP reduce el tamaño de las celdas de sus vecinos (& crea una nueva celda)

- Eliminar un PoP obliga a su celda a redistribuirse a los vecinos (surgimiento de capacidad en vecinos)

- Un usuario cerca de un límite de celda puede cambiar entre PoPs a medida que el equilibrio de carga se desplaza

- Una falla de un PoP agranda todas las celdas efectivas de los vecinos durante la interrupción

Consecuencia operativa: cuando un PoP falla, su carga no desaparece; se migra a los PoPs vecinos. Si los vecinos están dimensionados solo para su celda normal, el surgimiento quebranta el siguiente (falla en cadena de PoP). Los proveedores maduros de CDN dimensionan cada PoP con el surgimiento de falla de vecino en mente.

Celdas de Voronoi alrededor de PoPs; una falla de PoP agranda las celdas de los vecinos

Una CDN corre 4 PoPs sirviendo la continente EE. UU.: Costa Oeste, Montaña, Medio Oeste, Costa Este. Cada uno está dimensionado para ~25% del tráfico total de EE. UU. El PoP de la Montaña falla. Prediga: (1) qué vecinos PoPs absorben la carga redistribuida, y en aproximadamente qué proporción, y (2) qué pasa si esos vecinos estaban dimensionados exactamente para el 25% cada uno sin margen de cabeza.

La Desigualdad del Triángulo Es Imposible Engañar

Física Establece el Suelo

La luz viaja a ~300,000 km/s en el vacío. En fibra, alrededor de 200,000 km/s debido al índice de refracción. Entonces:

- ~1,000 km de fibra = ~5 ms ida = ~10 ms de ida y vuelta

- Costa a costa EE. UU. (~5,000 km) = ~50 ms RTT mínimo

- EE. UU. a Europa (~8,000 km) = ~80 ms RTT mínimo

- Antípoda (a la mitad del mundo) = ~200 ms RTT mínimo

Este es un suelo. El RTT real siempre es mayor (saltos de enrutador, switching, cola, congestión). Ninguna aplicación puede ser más rápida de lo que lo permite la física.

Triángulo Desigual

Para tres nodos A, B, C, el triángulo desigual dice que d(A,C) <= d(A,B) + d(B,C): una ruta directa es más corta (o igual) que cualquier ruta indirecta.

Lectura de red: si tu servicio rutea A -> B -> C en lugar de A -> C directamente, la latencia es al menos la suma de dos latencias de tramo. A menudo más debido al procesamiento en B.

Lectura arquitectónica: cada indirección (proxy, equilibrador de carga, salto CDN) agrega al menos un tramo de red ala latencia percibida por el usuario. Los beneficios de CDN vienen de hacer que el tramo del usuario sea más corto (PoP más cercano que el origen), incluso aunque el número total de saltos aumente.

Trampas de múltiples regiones: un servicio que lee de la región A, pero escribe en la región B incurre en latencia A-a B en cada escritura. Si A y B están a 100 ms de distancia, cada escritura tarda al menos >= 100 ms mínimo. Las bases de datos extendidas pagan este suelo en cada vez.

Triángulo de latencia: A-B-C definido por la distancia física

Pagar el Suelo

Un servicio se ejecuta en dos regiones: EE. UU.-Este (us-east-1) y Europa Occidental (eu-west-1). Las dos regiones están a aproximadamente 5,500 km de distancia. El servicio tiene una base de datos principal en EE. UU.-Este. Los usuarios de EU tienen sus solicitudes servidas por los backends de EU-West, pero cada escritura requiere una llamada de vuelta al principal de EE. UU.-Este.

Calcula la latencia del suelo para una escritura de usuario de EU (ida y vuelta desde el navegador del usuario a la backend de EU-West al backend principal de EE. UU.-Este y de vuelta). Comparalo con una lectura de usuario servida completamente desde el estado caché de EU-West. Luego, propone un cambio arquitectónico que reduce la latencia del suelo para escrituras de usuarios de EU.

Diseño Geográfico de Capacidad

Síntesis

Ahora puedes leer celdas de Voronoi como capturas de PoP, calcular suelos de latencia de velocidad de la luz y aplicar la curva de cola en el nivel de proxy.

Aplica los tres.

Un equipo planea la cobertura de CDN para un servicio con usuarios en tres continentes: América del Norte (60% de los usuarios), Europa (30%) y Asia (10%). Tienen un presupuesto para 6 PoPs. Cada PoP puede servir una celda establecada al 70% de utilización sin cruzar la rodilla de la curva de cola.

Diseña la ubicación de PoP: (1) ¿cómo distribuirías 6 PoPs en los tres continentes, (2) para la participación de usuario más pequeña (Asia al 10%), ¿cuál es el suelo de latencia para un usuario de Asia que se sirve desde un PoP de Europa si no existe un PoP de Asia (supongamos una distancia de ~9000 km) y (3) ¿cuál sería el margen de capacidad que requerirías por PoP para sobrevivir a una falla de un solo PoP sin cascada?

Cierre del Curso Complementario

Cierre del Curso Complementario

Has completado las cinco lecciones geométricas de-* complementarias:

- Proxies & Origins: grafos dirigidos, conteo de saltos, fan-in / fan-out, indirectización

- Stateless Horizontal Scaling: Ley de Little como área, curva de cola y su rodilla

- Ingress & Egress Separation: estructura bipartita, eliminación de vértices cortantes, tolerancia a particiones

- Failure Modes & Blast Radius: centralidad entre vértices, corte mínimo, diámetro

- Observability & Capacity (esta una): celdas de PoP de Voronoi, suelo de triángulo de latencia, diseño de capacidad geográfica

La línea argumental: los sistemas distribuidos tienen estructura geométrica. Cada arquitectura es un grafo. Cada suelo de latencia es un triángulo de igualdad. Cada decisión de capacidad es una curva y una rodilla. Una vez que ves la geometría, las decisiones operativas siguen de ella.

Combínalo con las cinco lecciones principales (cs_distsys_*), tienes un modelo mental funcional de un sistema distribuido a nivel web y el rigor gráfico para razonar sobre él.

Buen trabajo.