| ▲ | Caddy compatibility for zeroserve: 3x throughput and 70% lower latency(su3.io) |
| 100 points by losfair 6 hours ago | 30 comments |
| |
|
| ▲ | 1a527dd5 4 hours ago | parent | next [-] |
| 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
|
| |
| ▲ | KronisLV 3 hours ago | parent | next [-] | | > Very bizarre, never seen that before. For my own stuff that's not meant for a wider audience, I sometimes use mTLS in front of my apps, alongside self-signed certs (my own CA) that shouldn't show up in certificate transparency logs. This site also seems to be requesting a certificate from the user. Normally you probably don't want that for public facing resources. | |
| ▲ | embedding-shape 3 hours ago | parent | prev | next [-] | | Here it attempts to read my personal certificate that sits in the browser that I use for filling my taxes and do government stuff, suspicious indeed. | | |
| ▲ | cmgbhm 3 hours ago | parent | next [-] | | That’s likely just the side effect of supporting mtls. Mutual TLS came around at the same time as Microsoft did implicit network auth. Seemed magical at the time and so hare brained for eons of problems. The user side tls never caught on in most circles and still has the ancient sharp edges | | | |
| ▲ | naturalmovement 15 minutes ago | parent | prev | next [-] | | That's literally how client certificates work. It's not attempting to "read" anything, nor is it the least bit suspicious or malicious. Your browser was asked if it would like to present a certificate to authenticate, and you were prompted to choose one if you please. You can also hit cancel as client auth can be optional and the server will either serve you the page or a 401/403. It's like being asked to show ID to enter a pub, you can either show one or decline, and they may or may not let you enter based on that transaction. | |
| ▲ | mook 3 hours ago | parent | prev [-] | | That's because the client certificate interface in browsers is supremely dumb. It always just lists all certificates you have, with very little context in the UI, and hopes that's good enough. I believe that's part of the reason client certificates are not poplar; having actual users deal with that is terrible, and the browsers (in practice, Chrome because of its overwhelming market share) isn't incentivized to fix it. | | |
| |
| ▲ | sunaookami 3 hours ago | parent | prev | next [-] | | Same on Firefox | |
| ▲ | linsomniac 4 hours ago | parent | prev | next [-] | | Same on Arc | |
| ▲ | jorl17 4 hours ago | parent | prev [-] | | Same on Zen |
|
|
| ▲ | tln 4 hours ago | parent | prev | next [-] |
| No ACME! That is a dealbreaker https://github.com/losfair/zeroserve/blob/main/CADDY_COMPAT.... |
| |
| ▲ | codys 4 hours ago | parent [-] | | Yes, I agree it would be very nice to have a way to integrate ACME into zeroserve. I'm not sure if zeroserve's plugin system might allow one to add a plugin to support it? |
|
|
| ▲ | codingjoe 3 hours ago | parent | prev | next [-] |
| "Caddy compatible" minus everything that matters, like ACME and plugins. And NGINX still steals the show. Not everything needs to be rewritten. |
| |
| ▲ | __natty__ 3 hours ago | parent [-] | | Same thoughts. If I need more performant caddy alternative I'm going to use nginx at least it has some extras. |
|
|
| ▲ | augunrik 5 hours ago | parent | prev | next [-] |
| I am surprised how well nginx holds up?! |
| |
| ▲ | phillipseamore 4 hours ago | parent | next [-] | | Why? It's one of the most optimized HTTP servers ever. Anything that claims beating nginx in benchmarks should be treated with high suspicion. I think these zeroserve numbers are likely accurate but it doesn't have the features and module ecosystem of nginx so the margins aren't worth it for me. | | |
| ▲ | augunrik 3 hours ago | parent [-] | | Because it passes more boundaries and stuff.
But hey, I didn’t code a Webserver so far - so what do I know. :D AFAIK eBPF can be hardware offloaded. If you have the use case. | | |
| ▲ | someothherguyy an hour ago | parent [-] | | > But hey, I didn’t code a Webserver so far - so what do I know If you limit the scope, its worth doing and might not take as much effort as you might think. You could possibly find some enjoyment and learn a few things doing so. |
|
| |
| ▲ | miladyincontrol 35 minutes ago | parent | prev [-] | | I mean, nginx dang well should? This is just an incredibly synthetic http(s)/1.1 test for what its worth. Like you totally could turn off garbage collection for caddy especially since this is only testing incredibly short single response queries that would never need GC. Shockingly you would actually get better performance than either nginx or zeroserve, but like the uselessness of this benchmark it'd mean nothing to the real world usage of these web servers. |
|
|
| ▲ | smallerize 5 hours ago | parent | prev | next [-] |
| 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... |
| |
| ▲ | codys 4 hours ago | parent [-] | | zeroserve doesn't use the Linux kernel's eBPF runtime to run the eBPF it uses, so the constraints of the Linux kernel's eBPF runtime (chosen because of how the Linux kernel thinks about protecting the Linux kernel from user space) don't apply to zeroserve (or other tools that use the eBPF instruction set but don't use the Linux kernel's particular implementation) |
|
|
| ▲ | zsoltkacsandi 5 hours ago | parent | prev | next [-] |
| 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? |
|
| ▲ | Thaxll 2 hours ago | parent | prev | next [-] |
| 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. |
| |
| ▲ | ianm218 24 minutes ago | parent | next [-] | | Isn't there a chicken and egg problem where projects need to start with 0 track record? Nginx had zero track record at one point as well | |
| ▲ | 4ndrewl 26 minutes ago | parent | prev [-] | | Never mind cooldowns for dependencies, we need cooldowns for these adhd vibe projects. |
|
|
| ▲ | ok123456 an hour ago | parent | prev | next [-] |
| Exposing services that use io_uring is a hard pass. It's only been a handful of weeks since the last security advisory. |
|
| ▲ | BoingBoomTschak 3 hours ago | parent | prev | next [-] |
| 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. |
|
| ▲ | dshat 2 hours ago | parent | prev | next [-] |
| No thanks |
|
| ▲ | nullstyle 5 hours ago | parent | prev [-] |
| Fudge, I really need to carve out time today to play with zeroserve. Very cool stuff |