Live data from Hacker News

The Raspberry Pi web server speed test

jeremymorgan.com

1–10 of 19 posts

Re: The Raspberry Pi web server speed test

#2
There is something very appealing in the idea of running own web server on a small, cheap device like RaspberryPI and pushing it to the limits. It's of course far more reasonable to just buy a hosting and don't bother about it, but how great would it be to host applications on your own server infrastructure? :)

Re: The Raspberry Pi web server speed test

#4
FYI out of the box setting for apache are brain dead.

I literally have systems with tweaked setting doing 45k/second hits at less then 10ms latency on Apache. You can't do that with default settings because again the brain dead default settings.

I think in general tuning each of these carefully could eek out more performance on any platform especially one with such a small footprint.

Re: The Raspberry Pi web server speed test

#5
post #4

FYI out of the box setting for apache are brain dead. I literally have systems with tweaked setting doing 45k/second hits at less then 10ms latency on Apache. You can't do that with default settings because again the brain dead default settings. I think in general tuning each of these carefully could eek out more performance on any platform especially one with such a small footprint.

What is ruining the performance and why is it default?

Re: The Raspberry Pi web server speed test

#6
This is nice to see. I've ran lighttpd extensively in an embedded environment and for our application it's always performed like a champ due to its really tiny memory footprint. In an embedded environment most of the time the web server is just running a UI, so it's best that it stay out of the way and leave the RAM available for the main application. However in the case where we're doing inter-device communication via HTTP, I might reconsider nginx.

Re: The Raspberry Pi web server speed test

#7
post #5
post #4

FYI out of the box setting for apache are brain dead. I literally have systems with tweaked setting doing 45k/second hits at less then 10ms latency on Apache. You can't do that with default settings because again the brain dead default settings. I think in general tuning each of these carefully could eek out more performance on any platform especially one with such a small footprint.

What is ruining the performance and why is it default?

One example as one of the commenters noted was prefork being the default mpm. Something else valuable for static performance is allowoverride none (disable htaccess checking). As to why it is default, I suspect due to the popularity of php and other modules which often misbehave on the threaded worker mpm.

Re: The Raspberry Pi web server speed test

#8
His testing is very flawed. Look at the availability chart: nginx has higher availability at 200 concurrent connections than at 100? It's simply not possible if the test was the same w/ just a higher concurrent connection count, as he claims.

Edit: Yes, it's "possible" that this is something in the nginx code causing it work weird, but I'd say a benchmarker should use some common sense instead of blind reporting, notice that this is an anomaly, and re-test. Benchmarking should be a scientific statistical process, reporting mean and mode, standard deviation, etc. The background environment should be heavily studied and documented to ascertain no background/cron tasks are taking place, and every little detail should be carefully looked at before putting results up for the world to see.

Re: The Raspberry Pi web server speed test

#9

There is something very appealing in the idea of running own web server on a small, cheap device like RaspberryPI and pushing it to the limits. It's of course far more reasonable to just buy a hosting and don't bother about it, but how great would it be to host applications on your own server infrastructure? :)

The bottleneck wouldn't be the device, it'd be your internet connection. Higher latency, no uptime guarantees, bandwidth limits, contract restrictions, etc.

Plus, unless you already have a 50 or 100mbps connection at home for other reasons, getting that internet connection speed will cost you more than a VPS somewhere (usually). (And, it'd be 100mbps downstream, but your upstream would likely not be more than 10-20mbps.)

Re: The Raspberry Pi web server speed test

#10

His testing is very flawed. Look at the availability chart: nginx has higher availability at 200 concurrent connections than at 100? It's simply not possible if the test was the same w/ just a higher concurrent connection count, as he claims. Edit: Yes, it's "possible" that this is something in the nginx code causing it work weird, but I'd say a benchmarker should use some common sense instead of blind reporting, not…

"not possible" is quite a strong claim in the realm of concurrent software, and so is "simply". Benchmarking is taking a measurements of a nondeterministic process, i.e. a statistical sample. Yes, some problem with the setup is quite likely given the result, but other explanations are possible as well. What if some threshhold for some action that helps the server deal with more concurrent connections was just not hit at 100 connections? unlikely but not imposible.
Post reply on HN