Nuevos usuariosPlanes gratuitos de DNS y CDN para cada cuenta nueva.Crear una cuenta

La nueva infraestructura perimetral de Yeap CDN: por qué elegimos Rust

Reemplazamos nuestra infraestructura perimetral de CDN por una versión propia desarrollada en Rust sobre Pingora. Esto supone para su sitio conexiones más rápidas, configuración que se aplica en segundos y mayor aislamiento y seguridad.

Durante el último año, migramos la infraestructura perimetral de Yeap CDN de OpenResty (nginx más Lua) a una implementación propia escrita en Rust sobre Pingora, el framework de proxy que Cloudflare publicó como código abierto. La nueva infraestructura ya gestiona la mayor parte de nuestro tráfico, y los nodos restantes se están migrando según lo previsto.

Este artículo deja de lado la mayoría de los detalles internos y responde a una pregunta: ¿qué supone la nueva infraestructura perimetral para su sitio web?

Por qué hicimos el cambio

La implementación anterior combinaba configuración de nginx, scripts de Lua, módulos en C y un motor de JavaScript integrado. Era rápida, pero cada función por dominio exigía cambios simultáneos en varias capas, y los errores de configuración a menudo pasaban inadvertidos en lugar de generar un error. A medida que aumentaban las funciones, necesitábamos una base más unificada y fiable.

Elegimos Rust por tres razones:

  • Seguridad de memoria. El propio lenguaje impide los desbordamientos de búfer y los punteros colgantes, las causas más comunes de fallos y vulnerabilidades en código C.
  • Configuración con tipado estricto. La configuración de cada dominio se valida cuando llega a un nodo. Los campos mal escritos o con un tipo incorrecto se rechazan de forma explícita en lugar de ignorarse.
  • Facilidad de prueba. Toda la implementación perimetral es un programa escrito en un solo lenguaje, cubierto por más de mil pruebas automatizadas que se ejecutan antes de cada lanzamiento.

Qué notará

Conexiones más rápidas

La nueva infraestructura admite HTTP/3 (QUIC), que funciona mejor en redes móviles y enlaces con pérdida de paquetes. Los tickets de sesión TLS se conservan tras reiniciar los nodos, de modo que los visitantes recurrentes pueden omitir la negociación completa y ver la primera pantalla antes.

Configuración que se aplica en segundos

Cuando cambia las reglas de caché, de firewall o de página en la consola, la nueva configuración llega a todos los nodos perimetrales en segundos y se sustituye de forma atómica. Las solicitudes en curso terminan con la configuración anterior, las nuevas usan la actualizada y ningún nodo se reinicia ni interrumpe conexiones.

Control preciso de la caché

Las claves de caché pueden normalizar y ordenar los parámetros de consulta, así como aplicarles listas de permitidos o de bloqueados. Una purga puede eliminar una sola variante con parámetros específicos o todas las variantes de una ruta a la vez.

Seguridad en el perímetro

Los conjuntos de reglas WAF, los límites de solicitudes, la identificación de bots mediante huellas y las reglas geográficas y de IP se ejecutan en el perímetro, por lo que las solicitudes maliciosas se detienen antes de llegar a su servidor de origen. Cada bloqueo se registra junto con la regla que lo activó.

Funciones perimetrales con aislamiento real

Los Workers perimetrales se ejecutan en entornos aislados de WebAssembly independientes, cada ejecución con su propia memoria y un límite estricto de tiempo de CPU. Un script defectuoso de un cliente no puede afectar a los demás ni dejar fuera de servicio un nodo.

¿Qué tan rápido es?

Con tráfico de navegador en condiciones reales (TLS, HTTP/2 y compresión), la nueva infraestructura ofrece mayor capacidad de procesamiento y menor latencia en los percentiles altos que nginx con una configuración equivalente. La razón principal es que almacena directamente el contenido comprimido en caché, por lo que un acierto de caché no requiere volver a comprimirlo.

Para lograrlo, no tratamos Pingora como una caja negra. Lo personalizamos a fondo y optimizamos la ruta de ejecución de los aciertos de caché, la más utilizada en cualquier CDN.

Una migración transparente

Las implementaciones anterior y nueva comparten el mismo plano de control y la misma configuración, y el formato de los registros de acceso coincide campo por campo. No necesita cambiar nada: sus dominios, certificados y reglas de caché y de firewall se transfieren automáticamente.

Próximos pasos

La nueva infraestructura perimetral permite hacer muchas cosas que antes eran difíciles de desarrollar. En próximos artículos explicaremos cómo implementamos HTTP/3 y la reanudación de sesiones TLS, cómo funciona la purga de caché hasta el nivel de variantes individuales y cómo nuestro DNS asigna servidores de nombres a su zona.

Si aún no lo ha probado, añada un sitio en la consola. El plan gratuito de CDN ya funciona en la nueva infraestructura perimetral.

Cree en Yeap Cloud

Planes gratuitos de DNS y CDN para cada cuenta nueva.

Registrarse gratis