Aceleración de red global - Entrega de baja latencia con AWS Global Accelerator y CloudFront

Enruta el tráfico hacia la red global de AWS tempranamente usando IPs Anycast para dirigir a los clientes a la ubicación de borde más cercana. Esta guía cubre la integración con ALB/NLB y el diseño de failover.

Desafíos de la aceleración de red global y el enfoque de AWS

Para las organizaciones que operan globalmente, entregar contenido y aplicaciones a usuarios de todo el mundo con baja latencia es un desafío crítico. El enrutamiento de internet no está optimizado, y los paquetes pueden tomar desvíos a través de múltiples ISPs. Esto resulta en mayor latencia, pérdida de paquetes y jitter, degradando la experiencia del usuario. Abordar este problema on-premises requiere construir centros de datos alrededor del mundo y construir infraestructura de enrutamiento Anycast o CDN propietaria, incurriendo en enormes costos de inversión y operación. AWS resuelve este desafío con dos servicios: Global Accelerator y CloudFront. Global Accelerator aprovecha la red global de AWS para reenviar tráfico por rutas óptimas, mientras que CloudFront almacena en caché y entrega contenido desde más de 450 ubicaciones de borde en todo el mundo. Al combinar ambos servicios, puedes entregar tanto contenido estático como aplicaciones dinámicas a alta velocidad.

Cómo funciona AWS Global Accelerator y cómo usarlo

AWS Global Accelerator es un servicio de red que mejora el rendimiento de las aplicaciones hasta en un 60% usando la red global de AWS. El tráfico del usuario llega a la ubicación de borde de AWS más cercana y luego se reenvía al endpoint de la aplicación a través del backbone de red privada de AWS. Esto reduce la latencia y la pérdida de paquetes en comparación con el enrutamiento a través de la internet pública. Global Accelerator proporciona dos direcciones IP estáticas Anycast, permitiéndote cambiar los endpoints del backend sin cambios de DNS. La función de health check detecta automáticamente endpoints fallidos y hace failover del tráfico a los saludables. El failover se completa en decenas de segundos, significativamente más rápido que el failover basado en DNS. Una diferencia clave con CloudFront es que soporta aplicaciones TCP y UDP, servidores de juegos, VoIP y comunicación de dispositivos IoT además de HTTP.

Elección y combinación de CloudFront y Global Accelerator

Tanto CloudFront como Global Accelerator buscan mejorar el rendimiento global, pero están optimizados para diferentes casos de uso. CloudFront se especializa en el almacenamiento en caché de contenido y es ideal para archivos estáticos (imágenes, CSS, JavaScript), streaming de video y almacenamiento en caché de respuestas de API. Al almacenar contenido en ubicaciones de borde, reduce las solicitudes al servidor de origen, disminuyendo tanto los costos de entrega como la latencia. Global Accelerator, por otro lado, no tiene capacidades de almacenamiento en caché y reenvía todas las solicitudes al backend, pero proporciona optimización de red a nivel TCP/UDP. Es adecuado para cargas de trabajo donde el almacenamiento en caché no es apropiado, como gaming, trading financiero y señalización de streaming en vivo que requieren rendimiento en tiempo real. Una arquitectura combinada también es efectiva: usa CloudFront para entregar contenido almacenable en caché mientras usas Global Accelerator para acelerar el tráfico de aplicaciones dinámicas. Para más información sobre optimización de rendimiento CDN, también puedes consultar libros relacionados en Amazon.

Optimización de rendimiento y gestión de costos

Para maximizar el rendimiento de Global Accelerator, la configuración adecuada de los pesos de grupos de endpoints y los dials de tráfico es esencial. Los dials de tráfico permiten ajustar el porcentaje de tráfico dirigido a una región específica entre 0% y 100%, lo cual también puede usarse para despliegues blue-green y releases canary. La configuración de afinidad de cliente puede fijar las solicitudes del mismo cliente al mismo endpoint, soportando aplicaciones con estado. En cuanto a costos, Global Accelerator cobra una tarifa fija (aproximadamente $18 USD al mes por acelerador) más tarifas de transferencia de datos. CloudFront usa precios de pago por uso basados en el conteo de solicitudes y el volumen de transferencia de datos. Habilitar la función Origin Shield consolida las solicitudes al origen, reduciendo la carga y el costo del origen. Seleccionar la clase de precio de CloudFront apropiada permite limitar las regiones de entrega y optimizar costos. Ambos servicios incluyen protección DDoS de AWS Shield Standard sin costo adicional. AWS permite combinar CloudFront, Global Accelerator y WAF individualmente, seleccionando solo las funciones que necesitas para optimizar costos. A continuación se muestra un ejemplo de creación de un Global Accelerator con AWS CLI. aws globalaccelerator create-accelerator --name my-accelerator --ip-address-type IPV4 --enabled aws globalaccelerator create-listener --accelerator-arn arn:aws:globalaccelerator::123456789012:accelerator/abc-1234 --port-ranges FromPort=80,ToPort=80 FromPort=443,ToPort=443 --protocol TCP

Resumen - Estrategia de aceleración de red global

Al combinar el almacenamiento en caché de contenido de CloudFront en más de 450 ubicaciones de borde con la optimización de tráfico de Global Accelerator sobre la red privada de AWS, puedes acelerar integralmente todo, desde contenido estático hasta aplicaciones dinámicas. Las IPs Anycast estáticas de Global Accelerator y el failover rápido lo hacen ideal para aplicaciones de misión crítica que requieren alta disponibilidad. Al diseñar una estrategia de red global, evalúa la combinación óptima de servicios en tres ejes: características del contenido (almacenable en caché o no), requisitos de protocolo (HTTP o TCP/UDP) y requisitos de disponibilidad.