
Benchmark of Python Web Servers - jp_sc
http://nichol.as/benchmark-of-python-web-servers?source=g
======
whalesalad
I have been using uWSGI both locally and in production environments for a
little while now and love it. I haven't been able to give it a complete
workout yet as the "production" environments I am using it in are for sites
that are only in beta testing.. but it's doing really well.

I am a django dev, and use uWSGI and nginx locally on my Mac for all my sites.
I do this rather than using the built-in server to try and keep my dev/prod
environments similar.

Luckily nginx has support for uWSGI out of the box, with a couple of
configuration lines you can point to a port or socket and be up and running in
no time.

~~~
idm
Another happy uWSGI user here.

I've been running nginx on the front line, then using apache/mod_wsgi as an
app server... and this was just dumb. Now, nginx goes straight to uWSGI, and
being able to separate my web process from my app process is such a joy.

------
bobx11
I can't believe this link is being recycled through hackernews and reddit -
it's a year old. I wish part of the semantic web was a tag to communicate to
news aggregator sites the published date so there could be a "NOT NEWS"
warning. ;)

~~~
beaumartinez
It's a year old, but still very relevant.

~~~
tedunangst
In order to know it's still relevant, someone would have needed to repeat the
benchmarks with the latest versions, in which case a link to the new
benchmarks would be even more relevant and useful.

------
kingkilr
I don't have time to test this exact benchmark, but the last time I
benchmarked PyPy on tornado it did 2x the req/s flat out, so probably (and
I'll confirm later) that puts PyPy running tornado in the #1 place here.

------
plainOldText
This article is almost 1 year old. It is dated March 15, 2010.

I'm wondering if things have changed in the last year. I plan to write a web
app written in python but boy I'm having so much hard time choosing a python
web server/framework. There are so many good choices out there. And when the
number of choices increases so does the time needed to figure out your mind.
:)

~~~
nichol4s
Oh and regarding the choices you have...

The benchmark should be a small part of the final decision you take. I would
first decide on the type of flavour you want your webserver to have: threaded?
event-driven? with callbacks or coroutines?

Making the right choice here already limits the selection.

------
antihero
Damn, there I was hoping this might be an updated version that fixed all the
flaws in the original test that people pointed out.

------
cletus
I appreciate the work that went into making this post.

However where the author failed was in colour choice, specifically on the
charts. Subdued hues are fine as a statement for a theme, not when you're
trying to discern which subdued hue of blue matches which Python Web server.

More distinct colours please!

~~~
MichaelStubbs
I don't know if you're already aware of this, but you can hover/click labels
to make lines on the graph highlight and disappear respectively. I've found
that these features make the graphs much easier to read.

That said, I definitely agree there needs to be an improvement to the colours
used.

------
kenkam
Thanks for this very comprehensive benchmark. I am going to have a look at
uWSGI and gevent!

------
zokier
I wonder how would Apache/FastCGI-combo compare to these app servers?

