Benchmark of Python Web Servers
nichol.as
nichol.as
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.
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.
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. :)
I might post this weekend something about the high latency Tornado had (in the concurrency benchmark) and give a few remarks about the poor performance Gunicorn had in the benchmark.
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.
I think frameworks would be a more difficult choice, I like Flask as it's simple and uses Jinja2, which is sexy.
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!
That said, I definitely agree there needs to be an improvement to the colours used.