Live data from Hacker News

Show HN: I'm rewriting a web server written in Rust for speed and ease of use

ferron.sh

11–20 of 100 posts

Re: Show HN: I'm rewriting a web server written in Rust for speed and ease of use

#11
Kudos!

This is great, I started working on a similar project but never had the discipline to sit through all the edge cases.

Maybe I'll start building it on top of ferron!

I would love to have a minimalistic DIY serverless platform where I can compile rust functions (or anything else, as long as it matches the type signature) to a .so, dynamically load the .so and run the code when a certain path is hit.

You could even add JS support relatively easily with v8 isolates.

Lots of potential!

Re: Show HN: I'm rewriting a web server written in Rust for speed and ease of use

#12

Edit : just tried it for serving a fastapi. It's fantastic. Instant TLS via Let's Encrypt. There may be other webservers that are equally easy, but this one is certainly easier than Apache or ngninx, which I used so far. Love it. -- Reach out to the guys at Kamal. They wrote their own reverse proxy because they thought Traefik was too complex, but they might be super happy about yours if Ferron is more powerful yet e…

They wrote their proxy because the declarative configuration of the existing proxies does not fit into their deployment flow.

Re: Show HN: I'm rewriting a web server written in Rust for speed and ease of use

#14
There is something funny going on in the benchmarking section. If you look at the charts, they don't benchmark the same servers in 4 examples.

Each of the 4 charts have data for Ferron and Caddy, but then include data for lighttpd, apache, nginx and traefik selectively for each chart, such that each chart has exactly four selected servers.

That doesn't inspire confidence.

Re: Show HN: I'm rewriting a web server written in Rust for speed and ease of use

#15
post #6

what are the advantages vs something like https://caddyserver.com ?

I've never used ferron, but if you look at the graphs, he gives comparisons. So, I guess, performance + easy of use. Obviously, caddy is much more mature though.

[dead]

Re: Show HN: I'm rewriting a web server written in Rust for speed and ease of use

#16

There is something funny going on in the benchmarking section. If you look at the charts, they don't benchmark the same servers in 4 examples. Each of the 4 charts have data for Ferron and Caddy, but then include data for lighttpd, apache, nginx and traefik selectively for each chart, such that each chart has exactly four selected servers. That doesn't inspire confidence.

> That doesn't inspire confidence.

The problems start even higher on the page in "The problem with popular web servers" section that doesn't inspire confidence either.

From "nginx configs can become verbose" (because nginx is not "just" a web server [1]) to non-sequiturs like "Many popular web servers (including Apache and NGINX) are written in programming languages and use libraries that aren't designed for memory safety. This caused many issues, such as Heartbleed in OpenSSL"

[1] Sidetrack: https://x.com/isamlambert/status/1979337340096262619

Until ~2015, GitHub Pages hosted over 2 million websites on 2 servers with a multi-million-line nginx.conf, edited and reloaded per deploy. This worked incredibly well, with github.io ranking as the 140th most visited domain on the web at the time.

Nginx performance is fine (and probably that's why it's not included in the static page "benchmark")

Re: Show HN: I'm rewriting a web server written in Rust for speed and ease of use

#19

> Security is imperative > Install with sudo curl bash

This is kinda funny, but what is a better alternative for new projects on Linux?

Why not the usual package repositories and distribution by the official ones?

Re: Show HN: I'm rewriting a web server written in Rust for speed and ease of use

#20

Earlier quoted context omitted.

This is kinda funny, but what is a better alternative for new projects on Linux?

Why not the usual package repositories and distribution by the official ones?

That's a slow process and you need someone to do the packaging, either yourself or a volunteer, and this for each distro. Which is not trivial to master and requires time. The "new" qualifier in the parent comment is key here.

Open build service [1] / openSUSE Build Service [2] might help a bit there though, providing a tool to automate packaging for different distributions.

[1] https://openbuildservice.org/

[2] https://build.opensuse.org/

Post reply on HN