HeadlinesBriefing favicon HeadlinesBriefing.com

zeroserve adds Caddy mode, triples throughput, cuts latency

Hacker News •
×

zeroserve has added a Caddy‑compatible mode that accepts a standard Caddyfile, JIT‑compiles it to eBPF and then to native x86_64 or ARM64 code, and executes the result inside an io_uring event loop. The change delivers roughly 3× throughput and about 70% lower latency compared with running the same configuration on Caddy.

In the author’s CI run on a two‑thread AMD Ryzen 7 3700X, zeroserve compiled with clang served 38,948 req/s at a median 1.45 ms latency, while the tcc build hit 36,653 req/s with 1.67 ms. By contrast, Caddy managed 12,529 req/s at 4.74 ms and nginx 37,424 req/s at 1.57 ms. The server also supports custom eBPF plugins invoked from the Caddyfile, such as an AWS SigV4 signer for S3 reverse‑proxying.

Developers can now drop an existing Caddyfile into zeroserve and gain near‑native performance without rewriting routing logic. Because the eBPF code runs in userspace, it retains safety guarantees while cutting CPU cycles. This makes zeroserve a compelling drop‑in for high‑throughput edge services that previously relied on heavier reverse proxies.

The binary is distributed via GitHub releases and can be started with ‘./zeroserve --caddy /etc/caddy/Caddyfile’. A sample configuration demonstrates calling the ‘sign_request’ method from an AWS‑SigV4 eBPF plugin to authenticate S3 traffic before proxying to a local MinIO instance. The project’s open‑source license invites community extensions.