zeroserve añade compatibilidad con Caddy: triplica el rendimiento y reduce la latencia un 70%

Fuentes: Caddy compatibility for zeroserve: 3x throughput and 70% lower latency

zeroserve, un servidor HTTPS de alto rendimiento que ejecuta scripts eBPF en espacio de usuario, incorpora un modo compatible con Caddy. Cuando recibe un Caddyfile, la herramienta lo compila al vuelo primero a eBPF y después a código máquina nativo para arquitecturas x86_64 y ARM64, ejecutándolo dentro de un bucle de eventos basado en io_uring.

Las pruebas comparativas realizadas con un proxy inverso HTTPS en dos hilos sobre un AMD Ryzen 7 3700X muestran un salto notable frente a Caddy: la versión de zeroserve con Clang alcanza 38.948 solicitudes por segundo con una latencia p50 de 1,45 ms y p99 de 3,91 ms, mientras que Caddy se queda en 12.529 req/s, 4,74 ms y 13,11 ms respectivamente. La variante compilada con TCC ofrece cifras similares (36.653 req/s). En consumo de memoria pico, zeroserve ronda los 30-34 MiB, frente a los 67,4 MiB de Caddy. Nginx, con 37.424 req/s, queda cerca de zeroserve y emplea solo 25,7 MiB.

El proyecto permite además cargar complementos en C que se invocan desde el propio Caddyfile, como una middleware de autenticación AWS SigV4 para reenviar tráfico a depósitos S3 o compatibles (MinIO, por ejemplo). zeroserve está disponible como binario único en GitHub y se ejecuta con ./zeroserve --caddy /etc/caddy/Caddyfile.