Live data from Hacker News

A fast and static web server for serving web apps

shortfin.io

71–80 of 135 posts

Re: A fast and static web server for serving web apps

#71
post #4

I don't get it. You create a server to solve C10K problem, and then host its own website with nginx? Why? Having HN crowd coming and testing your server would be a great test, no?

I host more websites on the same server and as kajecounterhack said I'm using nginx as a reverse proxy. The server is fast and have no problems at all with the HM crowd ;)

What are advantages over nginx? Memory footprint, higher through-output?

I mean, what's the main "selling point". Why should one use this instead of battle tested nginx?

Don't get me wrong, I'm not criticizing, I'm just curious.

Re: A fast and static web server for serving web apps

#72
post #67
post #66

Earlier quoted context omitted.

Yes, but at this point, of course you won't want to use the OP's software, or any other newish project linked on Hacker News. The method of installation (which is what we were talking about here) isn't the problem, because you wouldn't use anything from him because he isn't OpenBSD. And that's OK — you can be as conservative as you like. It just had me confused as to why you were bringing it up.

because you wouldn't use anything from him because he isn't OpenBSD My sarcasm detector must be malfunctioning. Who said I don't want to use his software or install anything linked on HN because they're new? I've checked out and installed plenty of things linked on HN, not because they're new, but because they're interesting. But lax procedures like the root shell install aren't good indicators. In fact, I was just g…

> My sarcasm detector must be malfunctioning. Who said I don't want to use his software or install anything linked on HN because they're new? I've checked out and installed plenty of things linked on HN, not because they're new, but because they're interesting. But lax procedures like the root shell install aren't good indicators.

Oh, my apologies. I think the context of your other comments caused me to misunderstand that one. Your initial comment was simply "Nginx is part of the base OpenBSD install," and I read your later comment as an explanation of that, which made it sound to me like "I'm OK with nginx because it comes with OpenBSD and not OK with the OP's server because he's not a trusted organization." I understand better now.

Re: A fast and static web server for serving web apps

#73
The request parsing code seems to be of dubious quality https://github.com/timothyej/Shortfin/blob/master/src/reques...

From a cursory glance:

1. https://github.com/timothyej/Shortfin/blob/master/src/reques...

should be (data_len - i >= 4) since it accesses data[i+3]

2. https://github.com/timothyej/Shortfin/blob/master/src/reques...

shouldn't headers[header_count]->key also be null terminated?

3. https://github.com/timothyej/Shortfin/blob/master/src/reques...

header_count can become greater than 49 which causes a heap overflow at https://github.com/timothyej/Shortfin/blob/master/src/reques... and https://github.com/timothyej/Shortfin/blob/master/src/reques...

Re: A fast and static web server for serving web apps

#74
post #48

Earlier quoted context omitted.

You're giving those executables full control over your computer. Yeah, you won't get burned very often (depending on where you're getting these executables.) But when you do get burned it's going to be catastrophic. That's the problem. It's a bad practice.

Hm, I see your point. How would you then recommend installing non open source software on a production system? E.g. a freeware (but proprietary) FTP server or a database engine.

If you are taking recommendations, I wouldn't recommend installing them at all. You could ask the authors to support a platform which has a better security model.

(Given that there are open-source and robuster-than-Windows platforms freely available.).

Re: A fast and static web server for serving web apps

#77
post #73

The request parsing code seems to be of dubious quality https://github.com/timothyej/Shortfin/blob/master/src/reques... From a cursory glance: 1. https://github.com/timothyej/Shortfin/blob/master/src/reques... should be (data_len - i >= 4) since it accesses data[i+3] 2. https://github.com/timothyej/Shortfin/blob/master/src/reques... shouldn't headers[header_count]->key also be null terminated? 3. https://github.com/t…

I'll look them up, thanks for noticing!

Re: A fast and static web server for serving web apps

#78
post #48

Earlier quoted context omitted.

You're giving those executables full control over your computer. Yeah, you won't get burned very often (depending on where you're getting these executables.) But when you do get burned it's going to be catastrophic. That's the problem. It's a bad practice.

Hm, I see your point. How would you then recommend installing non open source software on a production system? E.g. a freeware (but proprietary) FTP server or a database engine.

Chrome for Windows installs to a user's own app directory. It doesn't require admin privileges.

Re: A fast and static web server for serving web apps

#79
post #29
post #20

What's a "static web server"? I haven't seen this term. A webserver for only static pages, i.e. it won't talk to a runtime? But it's "for serving web apps", this means all the dynamic content is pulled from client side JS? Then you would still need programs on the server to answer AJAX requests. I did not find an explanation on the page or by Googling.

thttpd is probably the most well known "simple" webserver, and is very, very fast[1]. In fact, I think the op needs to explicitly mention thttpd on the page for shortfin and provide a performance comparison, since that's all anyone really cares about ... "is it faster than thttpd ?" [1] http://acme.com/software/thttpd/benchmarks.html

The citation should include a caveat that the benchmarks are from 1998 and that they were ran on a Pentium 100Mhz.

Re: A fast and static web server for serving web apps

#80

Very cool. I've been doing the same thing lately, writing my own little web server that serves static files. It's been a fun learning experience!

Nice, in what language? I've really learned a lot from creating shortin! Shortfin is written in C so it's a nice project to spend some time on when I get tired of writing javascript and html ;)
Post reply on HN