Live data from Hacker News

Caddy 0.10 Released

caddyserver.com

121–128 of 128 posts

Re: Caddy 0.10 Released

#121
post #56

I would just like to bring up how much I admire the way they want to profit off Caddy[1][2]. Sponsorships and focused development; followed by "remember, caddy is open source". My only feedback would be that they introduce a "$50/mo; my bank is not big enough" for people that wants to endorse their model/software. Look at nginx, where new functionality is hidden behind a paywall. I don't want to deny them [nginx devs…

Thanks for the feedback! We are mindful of people who want to contribute funds but aren't able to because of the price. We get a lot of requests for stickers and T-shirts and even jackets/sweaters; so we might go that route for individuals being able to contribute.

I would be interested in something that made it so when I donated, an additional plugin was created in the download that outputted my support of caddy in the header or as some kind of call to be included in web pages.

Something similar to how SVG based icons are used in many Git repos to display TravisCI scan results of the number of downloads. A similar badge could be supplied via plugin to supporters that shows how much the user has donated to the Caddy project or that they're a contributing member.

Re: Caddy 0.10 Released

#122
post #44

Earlier quoted context omitted.

Are you sure it doesn't even depend on libc? Most Go programs do end up depending on libc by default; they have to be specially compiled to avoid the libc dep (IIRC, anything that depends on net or net/http or something of that sort).

Go ships with both a pure Go and a libc-based DNS resolver. Some systems (like OS X) don't let Go make DNS requests directly. For more see https://golang.org/pkg/net/#hdr-Name_Resolution

> Some systems (like OS X) don't let Go make DNS requests directly.

I don't think this is a reasonable summary of the situation on OS X. That being that if you turn the firewall on and then turn on block of incoming connections on 10.11 and earlier, responses seem to get dropped. Characterizing that as a blanket disallowing of direct DNS requests is misleading. (I'm not defending OS X here, it's just that summaries like this turn into cargo cults.)

Re: Caddy 0.10 Released

#123
post #23
post #6

Earlier quoted context omitted.

I think over time there will be a similar server written in Rust, where at least we can be sure that there are no buffer overflows..until then nginx is probably better in every situation.

Do we really need someone to mention Rust in every thread ?

No, it just makes sense to have a fast and safe HTTP server at the same time.

Go is ona average 3x slower than C according to bechmarks, and it's hard to get rid of this issue because of how the language is architected. I just don't see Caddy as a possible long term replacement for nginx.

Re: Caddy 0.10 Released

#124

Earlier quoted context omitted.

I am not sure why this is getting downvoted, care to explain?

My guess: At 500Krps on a single proxy you're probably using 40GbE or higher right? So you're a fairly niche user and should have some sort of in-depth knowledge of this space. Your current setup should already some sort of horizontal scaling system in place. Just throwing out you "need" a 500Krps came across as fake boasting/clueless/whiny. I'm sure HN would love a more in-depth comment where you say how you're acco…

If your HTTP request size is 2048 bytes and the RPS is 500000 we get 1024000000 bytes / sec that is ~ 8 Gbit/s, lets say with overhead we are hovering around 10Gbit/s. Based on the response size you can do similar calculation. As you can see in the TechEmpower benchmarks frameworks with 3M+ req/s are not uncommon.

https://www.techempower.com/benchmarks/#section=data-r12&hw=...

This is on Dell R720xd dual-Xeon E5 v2 + 10 GbE. Now if I chose technology that cuts this performance 200x times I am wasting resources.

I like to idea of Caddy but before we can consider using it in production I need to make sure it can keep up with the performance requirement we got.

Re: Caddy 0.10 Released

#125
post #59
post #25

Earlier quoted context omitted.

Nginx had the same issue. Ubuntu ships 3 or 4 versions - nginx-light, nginx, nginx-full, nginx-extras - for different numbers of modules included.

With dynamic modules support now in Nginx, that practice should end.

As Michael Lustfield said in Debian bug #790623 in October 2015.

Re: Caddy 0.10 Released

#126

Random question: is there a way to start Caddy as root so it can bind to port 80 (for example) then change the user so a non-root user can send a `USR1` signal to Caddy to get it to reload the configuration?

At least with systemd caddy starts as a non-root user, if you use the provided unit-file: https://github.com/mholt/caddy/tree/master/dist/init/linux-s...

Better systemd integration would use the LISTEN_FDS mechanism, letting the service management subsystem open the privileged-access listening socket as instructed by a socket unit.

Re: Caddy 0.10 Released

#127

Earlier quoted context omitted.

My guess: At 500Krps on a single proxy you're probably using 40GbE or higher right? So you're a fairly niche user and should have some sort of in-depth knowledge of this space. Your current setup should already some sort of horizontal scaling system in place. Just throwing out you "need" a 500Krps came across as fake boasting/clueless/whiny. I'm sure HN would love a more in-depth comment where you say how you're acco…

If your HTTP request size is 2048 bytes and the RPS is 500000 we get 1024000000 bytes / sec that is ~ 8 Gbit/s, lets say with overhead we are hovering around 10Gbit/s. Based on the response size you can do similar calculation. As you can see in the TechEmpower benchmarks frameworks with 3M+ req/s are not uncommon. https://www.techempower.com/benchmarks/#section=data-r12&hw=... This is on Dell R720xd dual-Xeon E5 v2 +…

Yeah but as a proxy you need to add the request and response and you get that much full duplex. Those numbers are also with pipelining returning a tiny static response - basically as close to a TCP echo test as you can get.

Re: Caddy 0.10 Released

#128
post #31

Awesome product, I'm using it at work and it's incredibly fast. Configuration is easy, documentation is clear. The systemd unit provided in the repo is insane, all the latest security and isolation stuff are in it, a great inpiration for writing good systemd units.

Took me a while to find:

https://github.com/mholt/caddy/tree/master/dist/init/linux-s...

Post reply on HN