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

su3.io

159 points by losfair 13 hours ago


1a527dd5 - 12 hours ago

Anyone else got a really weird Chorme pop-up asking which cert to use for su3.io:443?

Very bizarre, never seen that before.

Thumbprints:

  - 60949a09aab8677f87a0b9eda7099a03ca510fb3
  - 1b146798f0dc93773247e86312f1b730c4eeebb3
codingjoe - 11 hours ago

"Caddy compatible" minus everything that matters, like ACME and plugins. And NGINX still steals the show. Not everything needs to be rewritten.

tln - 12 hours ago

No ACME! That is a dealbreaker

https://github.com/losfair/zeroserve/blob/main/CADDY_COMPAT....

augunrik - 12 hours ago

I am surprised how well nginx holds up?!

pbohun - 7 hours ago

I looked into writing an http server based on iouring myself, but all the resources I could find said iouring is less safe from a cybersecurity perspective.

Is there a safe way to use iouring for a webserver, or is libuv the better way to go, even though it has less performance?

smallerize - 12 hours ago

I still think of eBPF as not being Turing-complete. There is still a complexity limit in the verifier. Even if someone did implement Game of Life by having the program set a timer to run itself. https://isovalent.com/blog/post/ebpf-yes-its-turing-complete...

zsoltkacsandi - 12 hours ago

From a technical standpoint, these are always impressive projects, but I've always wondered: has anyone ever encountered a use case where the Caddy was the bottleneck?

BoingBoomTschak - 10 hours ago

Interesting. Trying to get some of the performance advantages of TUX/IIS without as much insecurity makes sense for some big players, I guess.

The usual 3400 lines lock file and AGENTS.md raise some questions about the aforementioned security, though.

- 8 hours ago
[deleted]
ok123456 - 8 hours ago

Exposing services that use io_uring is a hard pass. It's only been a handful of weeks since the last security advisory.

Thaxll - 9 hours ago

Another vibe coded, dead in 6 month Rust project.

People that trully need performance are not going to use a random server that has 0 support/ track record.

nullstyle - 13 hours ago

Fudge, I really need to carve out time today to play with zeroserve. Very cool stuff

dshat - 10 hours ago

No thanks

bastawhiz - 7 hours ago

The idea of jit compilation of a web server in a small project is pretty terrifying to me. The attack surface here is enormous.

And for what? My back end on a single host isn't pumping at 35k qps. If each request is 500 bytes, 35k qps is nearly 20mbps sustained with zero other io (in each direction). And this is using only two threads!

I think you'd be hard pressed to find an application where this is meaningfully useful versus just scaling horizontally. On a box that can run many threads in parallel, Caddy still vastly exceeds my ability to respond to pretty much any useful traffic. It's optimizing for a metric that wasn't a bottleneck in the first place.