TL;DR

Zeroserve is a new web server that simplifies deployment by serving sites from a single tarball and allowing request handling through sandboxed eBPF programs. It aims to replace traditional servers like nginx with a more streamlined, scriptable approach.

Zeroserve has been introduced as a zero-config web server that leverages eBPF for scripting, providing a fast, lightweight alternative to traditional servers like nginx and Caddy.

Zeroserve is a small, high-performance HTTPS server that serves websites directly from a single tarball without requiring configuration files. It supports modern TLS 1.3, HTTP/2, and encrypted client hello, and uses io_uring for network and disk I/O. Its key innovation is the ability to embed eBPF programs into the tarball, which run on every request in userspace, enabling custom routing, authentication, rate limiting, and proxying without external scripting runtimes. Scripts are compiled to native code via llc, sandboxed, and run within zeroserve’s event loop, offering a flexible, scriptable middleware layer. Deployment involves packaging the site into a tarball, which is indexed and served without unpacking, and hot reloading is achieved by replacing the tarball and sending a SIGHUP. The server is designed to be a simple, efficient alternative to existing solutions, with the entire configuration expressed as a single eBPF program.

Why It Matters

This development matters because zeroserve simplifies web deployment and request handling, reducing complexity and overhead associated with traditional servers. Its use of eBPF for scripting offers high performance and security, making it suitable for scalable, static, and dynamic sites. It also introduces a new model where configuration is embedded directly into executable code, potentially influencing future server architectures and deployment workflows.

How to Host your own Web Server

How to Host your own Web Server

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Background

Traditional web servers like nginx and Caddy rely on declarative configuration languages and optional scripting layers, which can become complex and fragmented. Zeroserve’s approach consolidates configuration into a single eBPF program, eliminating the need for separate config files and external scripting. Its design builds on recent advances in Linux kernel features like eBPF, io_uring, and TLS 1.3, aiming to optimize performance and security. The concept of serving sites from a single tarball with hot reload has been explored in static site hosting, but zeroserve’s integration of eBPF scripting for request handling is a novel development.

“The whole request path is in one eBPF program, making configuration as simple as reading top to bottom. No separate config files, just one script.”

— Zeroserve developer

“Using eBPF for request scripting in userspace is a significant step toward high-performance, flexible web servers that can be easily deployed and updated.”

— Tech analyst

Amazon

zero-configuration HTTPS server

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

What Remains Unclear

It is not yet clear how zeroserve performs under high concurrency or in production environments, as real-world benchmarks and extensive testing are still pending. Additionally, the security implications of embedding eBPF scripts directly into web servers are still being evaluated, and compatibility with existing infrastructure remains to be seen.

How to Host your own Web Server

How to Host your own Web Server

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

What’s Next

Further testing and benchmarking are expected to evaluate zeroserve’s performance at scale. Developers and users will likely explore its integration into production workflows, and the project may see community contributions to extend scripting capabilities and improve stability. Official documentation and deployment guides are anticipated to facilitate broader adoption.

Amazon

TLS 1.3 compatible web server

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Key Questions

How does zeroserve compare to nginx in performance?

Initial claims suggest zeroserve can outperform nginx on a single core for static files and small proxy responses, but comprehensive benchmarks are not yet available.

Can I use zeroserve for dynamic websites?

Zeroserve is optimized for static sites and request scripting; dynamic backend integration is possible through embedded scripts, but extensive dynamic backend support is still under development.

Is zeroserve secure to use in production?

Security evaluations are ongoing. Its sandboxed eBPF scripts reduce kernel risks, but comprehensive security testing is necessary before production deployment.

How easy is it to deploy updates with zeroserve?

Deployment involves replacing the tarball and sending a SIGHUP signal, enabling atomic updates without downtime.

Source: Hacker News

You May Also Like

A Few Words on DS4

Exploring the rapid rise of DwarfStar 4 (DS4), its significance for local AI inference, and what’s next for this influential project.

Jensen Huang slams ‘stupid’ analogy comparing GPUs to nuclear weapons — Nvidia CEO says government should allow selling GPUs to ‘adversarial countries’

Nvidia CEO Jensen Huang criticizes a comparison equating GPUs to nuclear weapons, emphasizing the difference between civilian and military tech.

Why Cloud Collaboration Matters for Print-Heavy Design Teams

Must-know reasons why cloud collaboration transforms print-heavy design teams—discover how it can elevate your workflow and ensure project success.

Batch Scanning Workflows That Save Hours Every Week

Proper batch scanning workflows can save hours weekly by automating processes and reducing errors, but mastering them requires understanding key strategies.