Live data from Hacker News

Caddy – Open-source web server with automatic HTTPS

caddyserver.com

51–60 of 132 posts

Re: Caddy – Open-source web server with automatic HTTPS

#52

Earlier quoted context omitted.

> I'm still waiting to hear your performance requirements btw. I suppose this encapsulates why I get turned off of Caddy every time I look into it: Basic concerns (including questions about approximate performance) are met with suggestions that I don’t know what I want and therefore I’m not qualified to make such judgments.

You're being unduly defensive. mholt is telling you that he can't provide meaningful general purpose performance numbers because the breadth of cases for Caddy vary too widely, so he's asking you for information about your specific use case so he can give you the very information you're complaining about not being able to access, but you're being cagey about sharing those requirements. You're certainly within your ri…

> but you're being cagey about sharing those requirements.

I don’t have one single set of requirements for every location I use a web server. Nobody does.

If Caddy is good for one thing but not so good for other things, why is it so hard to come out and say that?

Also, the benchmark I was questioning in the opening comment came from mholt on the official community forum. It’s mind boggling that I’m getting attacked for questioning the benchmark result that they provided in the first place.

Re: Caddy – Open-source web server with automatic HTTPS

#53

Earlier quoted context omitted.

You misunderstood then, because what was said was essentially "official benchmarks for servers are meaningless", not that "performance doesn't matter". Do your own testing, for your own usecase. But still, a server should rarely ever be your bottleneck. Your application's DB I/O will be.

> You misunderstood then, because what was said was essentially "official benchmarks for servers are meaningless", not that "performance doesn't matter". Do your own testing, for your own usecase. The Caddy forum thread I linked to above highlighted a Tweet about Caddy being 20X more performant than nginx. This was from the Caddy team. The frustrating part is how benchmarks are championed as a selling point when they…

> The Caddy forum thread I linked to above highlighted a Tweet about Caddy being 20X more performant than nginx.

That's just saying Caddy _can_ be faster, it's not saying Caddy _is always_ faster. That was never claimed.

> when I just wanted to know how Caddy compares to nginx in the most broad terms

But that's impossible. There's no way to "generally" benchmark a web server. There's just way too many ways it can be used for any single benchmark to ever be valid.

Do your own benchmarks, for _your_ usecase. That's the only way you'll get any kind of real answer.

Re: Caddy – Open-source web server with automatic HTTPS

#54

I tried to use caddy, but I wasn't able to find a currently supported module for IP filtering just a bunch of old unsubscribed ones, does anyone know if this is currently possible?

Yes, this is very common if I understand you correctly. You want the remote_ip matcher: https://caddyserver.com/docs/caddyfile/matchers#remote-ip

Re: Caddy – Open-source web server with automatic HTTPS

#55
post #39

I love what the Caddy project is doing, but every time I look into it I can’t get a straight answer about performance. One of the top search results for Caddy performance is this Caddy forum thread with a response from the Caddy author: https://caddy.community/t/performance-compared-to-nginx/7993 But it seems to be dodging the question and linking to the most misleading possible Tweets instead of providing any actual…

Can't think of any situations I was involved where the bottleneck was the http server app rather than the application behind it. Am I the only one?

As the other person that answered to you pointed out, there's a point where your HTTP server becomes the bottleneck, ie your backend being more concurrent and faster at producing content than your server is at delivering it.

But I feel the real bottleneck is developer pain. I switched to nginx from Apache like everyone else because nginx was nice to use and Apache wasn't. The performance aspect was only a rationalization.

Re: Caddy – Open-source web server with automatic HTTPS

#56
post #39

Earlier quoted context omitted.

Can't think of any situations I was involved where the bottleneck was the http server app rather than the application behind it. Am I the only one?

If you’re only serving up heavyweight web apps, then this is probably true. But Caddy also markets itself as an efficient static file webserver right on the home page: > Caddy is both a flexible, efficient static file server and a powerful, scalable reverse proxy. Perhaps the confusing part is the way that Caddy is marketed as “The Ultimate Server” when instead it’s designed to be a fast-enough reverse proxy for appl…

> There are many applications where performance really does matter.

Like what? Genuine question. I'm sure a cloud provider's layer 7 load balancer / Kubernetes Ingress would merit an optimized implementation but beyond those kinds of super-scale use cases I can't think of much.

Re: Caddy – Open-source web server with automatic HTTPS

#57
post #14

Earlier quoted context omitted.

What are your performance requirements?

This is exactly what the original complaint was: Someone complains that Caddy is slower than the options, and the official response is not neither agreement nor giving data to show that Caddy is fast, but equivocating about whether it matters while avoiding commenting on whether the claim is true. If you want to ship a webserver that's slower but safer and easy to use, that's fine ; I'm using Caddy to host my stuff b…

The claim can't be evaluated as "true or false", which is the point. The use cases for Caddy and similar software are too broad to be meaningfully approximated as a binary or scalar value.

Re: Caddy – Open-source web server with automatic HTTPS

#58
post #36

What makes Caddy setup of Lets Encrypt so much easier? I frequently hear that being a huge reason for Caddy use but looking at the documentation for NGINX [0] and Caddy [1], it doesn't seem to be much different. [0] https://www.nginx.com/blog/using-free-ssltls-certificates-fr... [1] https://caddyserver.com/docs/automatic-https

NGINX requires external tooling (e.g. certbot), Caddy's auto-HTTPS is built-in. Caddy's auto-HTTPS logic is much smarter and more robust than certbot or any other ACME client. In general, Caddy sites stay up when other sites will go down due to HTTPS/certificate issues. Certbot+cron is much more brittle than Caddy's embedded handling of certificates. Plus, Caddy has stronger memory safety guarantees than a C program…

Nginx has an excellent track record for CVEs: https://www.cvedetails.com/product/17956/Nginx-Nginx.html?ve...

Re: Caddy – Open-source web server with automatic HTTPS

#59

I tried to use caddy, but I wasn't able to find a currently supported module for IP filtering just a bunch of old unsubscribed ones, does anyone know if this is currently possible?

Depends what you mean by "IP filtering", but there's a built-in 'remote_ip' matcher that can let you handle requests from specific IPs/CIDRs differently (such as aborting/forcefully closing the connection): https://caddyserver.com/docs/caddyfile/matchers#remote-ip

Re: Caddy – Open-source web server with automatic HTTPS

#60
post #38
post #33

Earlier quoted context omitted.

just fyi, based on the bio of the person you're replying to, they're the author of caddy. not sure if this was known or not

Yeah, it's hard for us to hit a performance target that is being kept hidden from the devs.

This shouldn't be downvoted--it's very true, what performance are you trying to optimize? Throughput of long connections? Time from connection to first bytes? There are dozens of dimensions to web performance.
Post reply on HN