FRIDAY, OCTOBER 9, 2026|No. 18065
Technology · Performance · Open Source

Zeroserve Achieves Caddy Compatibility, Boosts Throughput 3x with Lower Latency

Zeroserve, a high-performance HTTPS server using eBPF, now supports Caddyfiles and benchmarks show three times the throughput and 70% lower latency compared to Caddy.

Zeroserve's eBPF-based HTTPS server outperforms Caddy by 3x in throughput and reduces latency by 70% in benchmark tests.
Zeroserve's eBPF-based HTTPS server outperforms Caddy by 3x in throughput and reduces latency by 70% in benchmark tests. · Photo by Justin Morgan on Unsplash
1 sources
Pipeline ingest
3 reads
Positive / Neutral / Negative
0 countries
Related coverage

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

zeroserve is a high-performance HTTPS server that runs eBPF scripts in userspace ( intro). Now it's got a Caddy-compat mode - when provided a Caddyfile, zeroserve JIT-compiles it to eBPF and then to native x86_64/ARM64 machine code, and runs it in an io_uringevent loop.

protocolserverthroughputp50p99peak RSS
httpszeroserve-clang38,948 req/s1.45ms3.91ms30.9 MiB
httpszeroserve-tcc36,653 req/s1.67ms4.00ms34.2 MiB
httpscaddy12,529 req/s4.74ms13.11ms67.4 MiB
httpsnginx37,424 req/s1.57ms4.24ms25.7 MiB

HTTPS reverse proxy, 2 threads, AMD Ryzen 7 3700X. Check CI for original run result.

Try it with your Caddyfile:

curl -fL -o zeroserve https://github.com/losfair/zeroserve/releases/download/v0.2.11/zeroserve-$(uname -m)-linux
chmod +x zeroserve
./zeroserve --caddy /etc/caddy/Caddyfile
curl http://127.0.0.1:8080

zeroserve runs turing-complete eBPF and you can call custom code from your Caddyfile. For example, to reverse-proxy a path to an S3-compatible bucket with AWS SigV4 auth, grab io.su3.aws-sigv4.c and then:

# zeroserve --plugin io.su3.aws-sigv4.c --caddy Caddyfile

example.com {
 route /s3/* {
 uri strip_prefix /s3
 rewrite * /my-bucket{uri}

 # Call the `sign_request` method in the eBPF middleware `io.su3.aws-sigv4.o`
 zeroserve_call io.su3.aws-sigv4 sign_request {
 access_key_id "minioadmin"
 secret_access_key "minioadmin"
 }

 reverse_proxy http://127.0.0.1:9000
 }
}

2026-06-14

PAN's pipeline reviewed approximately 1 open sources for this article. No human editor reviewed this article before publication.

Related Reads

Show on timeline →

Earlier on PAN

More in Technology →