News for hackers. Stuff that matters.
Re:Caddy – Open-source web server with automatic HTTPS by mholt on Monday November 29, 2021 @10:49AM (#29381179)
What are your performance requirements?
Re:Caddy – Open-source web server with automatic HTTPS by yjftsjthsd-h on Monday November 29, 2021 @11:42AM (#29381924)
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 because that's a reasonable trade off. It's just the dodging of the question that gets old fast.
Re:Caddy – Open-source web server with automatic HTTPS by throwaway894345 on Monday November 29, 2021 @12:14PM (#29382345)
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 by yjftsjthsd-h on Monday November 29, 2021 @12:20PM (#29382423)
I'm pretty sure you can approximate it to true - are there any cases where Caddy is faster than another webserver in the same usecase, with either default or tweaked configs on both?
Re:Caddy – Open-source web server with automatic HTTPS by throwaway894345 on Monday November 29, 2021 @12:28PM (#29382521)
Yes, you can get very gritty microbenchmarks, but those always fail to generalize well and lead to more confusion. Most people will make bad decisions off of microbenchmarks and those who won't will tell you they're nearly useless in the best case.
Re:Caddy – Open-source web server with automatic HTTPS by vxNsr on Monday November 29, 2021 @11:48AM (#29381995)
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
Re:Caddy – Open-source web server with automatic HTTPS by yjftsjthsd-h on Monday November 29, 2021 @11:59AM (#29382135)
Yes, that's why I am treating that comment as an official response.
Re:Caddy – Open-source web server with automatic HTTPS by mholt on Monday November 29, 2021 @11:55AM (#29382092)
Yeah, it's hard for us to hit a performance target that is being kept hidden from the devs.
Re:Caddy – Open-source web server with automatic HTTPS by qbasic_forever on Monday November 29, 2021 @12:17PM (#29382390)
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.
Re:Caddy – Open-source web server with automatic HTTPS by yjftsjthsd-h on Monday November 29, 2021 @12:21PM (#29382437)
That's totally reasonable. Does Caddy actually win on any of those dimensions?
Re:Caddy – Open-source web server with automatic HTTPS by withinboredom on Tuesday November 30, 2021 @02:03AM (#29389698)
There are millions of configurations for Caddy (which modules you compile into the binary) so this is literally impossible to know unless your benchmark your particular configuration for your particular use case.
Re:Caddy – Open-source web server with automatic HTTPS by vxNsr on Monday November 29, 2021 @03:32PM (#29384877)
I didn't mean my comment to come off as hostile. The way you replied seemed to imply you were involved in some way but didn't make note of that in your comment, sometimes when people don't realize who they're replying to they make bad assumptions, I was trying to prevent that from happening.

This whole thread has a lot of unproductive animosity, and it's possible part of that is due to the opaqueness who the identity of those involved.

Re:Caddy – Open-source web server with automatic HTTPS by PragmaticPulp on Monday November 29, 2021 @10:56AM (#29381289)
> What are your performance requirements?

If the requirements were such that web server performance didn’t matter, I wouldn’t care and wouldn’t be asking about it.

But the problem is that it doesn’t make sense to hide the performance statistics and then debate each user’s performance requirements instead of just letting the performance be a known quantity so we can all decide for ourselves.

Re:Caddy – Open-source web server with automatic HTTPS by mholt on Monday November 29, 2021 @11:20AM (#29381607)
We aren't "hiding" any performance stats. They just don't exist. It's super hard to generate them in a way that applies perfectly to everyone's use case.

I'm still waiting to hear your performance requirements btw.

Re:Caddy – Open-source web server with automatic HTTPS by Zababa on Monday November 29, 2021 @12:39PM (#29382671)
On the Caddy website (https://caddyserver.com/) it says:

> Caddy is both a flexible, efficient static file server and a powerful, scalable reverse proxy.

> LIGHTWEIGHT For all its features, Caddy runs lightly and efficiently with relatively low memory footprint and high throughput.

> STATIC FILES By default, Caddy will serve static files in the current working directory. It's so brilliantly simple and works fast.

> Caddy's HTTP server has a wide array of modern features, high performance, and is easy to deploy.

Emphasis with the italics being mine. All of these seem to hint at performance comparaisons being done in specific domains agaisnt other web servers. For example:

- efficient static file server: I would assume that "efficient" here is compared to other file servers, though that could mean also that it doesn't use much resources

- For all its features, Caddy runs lightly and efficiently with relatively low memory footprint and high throughput: That seem to imply that other servers with all these features are heavier and less efficient? Or that other servers just don't have those features? Relatively low memory footprint and high throughput? Relative to what?

- It's so brilliantly simple and works fast: What does fast mean here? Fast relative to what? Apache? The standard Go static file server? Python SimpleHTTPServer?

- high performance: High compared to what?

My goal here isn't to be confrontational. My point is that if there are all those claims on the main page of Caddy, then you must at some point have measured performance, resource usage and things like that against other servers. I think what people are asking is to substantiate those claims with data. You're right that it's hard to generate data in a way that applies perfectly to everyone use case. But then on what do you base all these claims? Why is Caddy called "the ultimate server"? At least that's why I'm wondering.

Re:Caddy – Open-source web server with automatic HTTPS by mholt on Monday November 29, 2021 @12:53PM (#29382839)
Not everything needs to be read as a comparison to other products. Adjectives have meaning without competition. They can be interpreted as ratios, for example requests / available memory, or load / latency.

It's not always about putting down other products. Both can be fast. Both can be efficient. Both can be fast and light. Both can be "high" without one having to be low in order for it to be valid to call it "high" -- because it's not always about the other product.

This discourse makes me exhausted, every time it comes up. I'm tired of everyone thinking I'm trying to outperform NGINX. Caddy's just fast and efficient, I don't care to defend that claim as much as people care to attack it.

Re:Caddy – Open-source web server with automatic HTTPS by Zababa on Monday November 29, 2021 @01:29PM (#29383314)
I mean, I get your point, but adjectives don't exist in a vacuum. If everything is fast, everything is slow too, and nothing is fast too, because everything is the same. When you use an adjective like "fast" or "slow", you're separating yourself from the whole, and you're putting the thing you're talking about in a category. Of course this is relative. You can be a fast marathon runner. You can be a fast human. Or a fast animal. Or a fast car, or plane. All of those have vastly different speed. But they still have meaning.

Now, Caddy is a web server. You say that it's fast and efficient. I'm not putting that into question. But what do you base that on? What would it take for Caddy to be judged as "slow" or "inefficient" by you? Maybe you don't have a precise answer, and that's perfectly okay. But you must have a way to evalute what's slow and what's fast, even when not comparing to other product. At least that's how I (and I assume, the people asking you all these questions) think.

> This discourse makes me exhausted, every time it comes up. I'm tired of everyone thinking I'm trying to outperform NGINX.

That's fair, and I can empathize. However, I think that's what will happen when the first thing people see on the website of Caddy is "THE ULTIMATE SERVER". Ultimate, for a good amount of people, is related to performance, so people are going to ask you about that. And when they don't get a clear answer, they're going to get frustrated.

Again, I'm not trying to be confrontational here. But there seems to be a real lack of understanding in this conversation, and I'm trying to clarify what people mean when they ask about Caddy's performance.

Re:Caddy – Open-source web server with automatic HTTPS by Xevi on Monday November 29, 2021 @02:29PM (#29384094)
Then what do they mean to you? I think people are just trying to understand. What is "fast" and "efficient" to you? Where do you draw the line?

When it comes to tech in particular, things are pretty much always compared relative to each other, because there's very little other reference points. React is generally deemed as slow relative to Svelte. Rust is more efficient than Python at runtime. These claims mean very little in a vacuum, in fact I'd say that they are almost pointless. You can't base you business decisions on claims that haven't been backed up by data. And if you do, you might regret them later on.

Re:Caddy – Open-source web server with automatic HTTPS by PragmaticPulp on Monday November 29, 2021 @11:54AM (#29382078)
> 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.

Re:Caddy – Open-source web server with automatic HTTPS by throwaway894345 on Monday November 29, 2021 @12:02PM (#29382173)
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 rights to not use Caddy, but it makes no sense to complain that you can't get the performance information you need when you won't share any information about your use case.

Re:Caddy – Open-source web server with automatic HTTPS by PragmaticPulp on Monday November 29, 2021 @12:10PM (#29382283)
> 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 by joshmanders on Monday November 29, 2021 @12:23PM (#29382469)
Nobody is attacking you. Calm down, yeesh.

You want performance metrics, but can't even tell us what metrics matter to you, but expect Matt and Caddy team to have them just available... You understand that your responses here are directly proving his point on not having them, right?

Re:Caddy – Open-source web server with automatic HTTPS by stronglikedan on Monday November 29, 2021 @12:29PM (#29382530)
> mholt is telling you

It's not what he's saying, but how he's saying it. "I'm still waiting to hear your performance requirements btw.", is a condescending, dismissive tone that would put more people off than not. Especially considering it was a reply within just a couple minutes of his initial question.

Re:Caddy – Open-source web server with automatic HTTPS by mholt on Monday November 29, 2021 @12:43PM (#29382709)
Sorry, don't mean to be condescending or dismissive. Just trying to get stuff done. To do that, I'll need that information.
Re:Caddy – Open-source web server with automatic HTTPS by genewitch on Monday November 29, 2021 @02:40PM (#29384237)
I've only used caddy twice, but it worked for like 2 years without interruption both times.

I don't think you're being negative or whatever and I also think the other person has an idea of what they want to know but not how to explain it.

Do they want connection handling metrics? SSL terminations? Caching performance?

Also, not at you but a general laugh, "the reverse proxy isn't the bottleneck ever" is funny because prior to haproxy, getting gigabit throughput to a backend was considered extreme engineering.

Now I can load balance and ssl terminate a gigabit with like 5 raspberry pi and an old Intel box to load balance and cache.