I've been investigating modwsgi for our Django-based sites and am quite impressed by the performance and other features compared to mod_python, which we currently use.

However in order to switch I'll have to convince our CTO of the advantages of doing so. While I can show benchmarks and blog articles, what would really convince him would be a list of sites, especially high-profile (or at least high-volume) ones that use modwsgi (especially with Django). Googling has however provided no results.

Is anyone here got any positive (or negative) experiences using modwsgi for large sites as opposed to mod_python or other solutions (Fastcgi etc) ?

link|improve this question
1  
Is this really a programming question? Would serverfault be a better place for this question? – Brian Neal Aug 25 '09 at 17:30
close -> belongs to serverfault.org – nosklo Aug 25 '09 at 19:00
1  
if the cto is influenced more by anecdotes than by technical reasons... – hop Aug 25 '09 at 21:08
feedback

migrated from stackoverflow.com Aug 26 '09 at 0:59

This question came from our site for professional and enthusiast programmers.

4 Answers

We use it :P

We're running worldoflogs.com on top of mod_wsgi, using parts of the django framework. We've tried all other deployment methods, but none of them can match mod_wsgi's memory footprint and stability in multi process + threaded mode.

We serve around 600k GET and 300k POST requests per day on 1 Dell PE1950, using around 20% of CPU and 2G memory at peak traffic around midnight, 5 mbit in (data uploads), 5 out (pure html).

When we were still new to this a few months ago, the site crashed one day because it ran out of memory - there's a big, big memory leak somewhere in the version we ran, and apache child processes used more and more memory until they got killed by MaxRequestsPerChild. After setting that on 100 as a quick fix, we evaluated alternative hosting methods.

FCGI wasn't selected for two reasons - configuration complexity and no multi-threading support. Even after reading all the docs, it wasn't clear what exactly I had to do to get it running, so I tried mod_wsgi first. As for multi-threading, you just can't run a single python instance with 10 threads with fcgi, but as most time is spent waiting for data from external sources, it isn't a very efficient use of memory. That was also one of the mod_python issues, we run apache with mpm-prefork.

Mod_wsgi on the other hand was a breeze to setup. After adding the server config, we never really had to look at it again, it just did its job and didn't bother us. We did change the configuration once to accommodate more concurrent clients, but that's just changing a number and reloading the apache config.

link|improve this answer
feedback

Most people don't necessarily publicise how they host web applications. You can find a couple of sites listed on Django sites.

http://www.djangosites.org/search/?query=mod_wsgi

The main Python conference sites are also hosted on mod_wsgi:

http://us.pycon.org/2010/about/

as well as sites like Trac Hacks.

http://trac-hacks.org/

I know of one very significant and large open source related site using mod_wsgi, but not sure if I can say they are using it as haven't seen public posting indicating they are doing so. Am checking whether I can mention it.

Then you get other sites like:

http://www.nibbits.com

There are lots of other as well, but I don't readily keep track of them and in many cases don't know if am allowed to mention if they use it.


UPDATE 1

Michael Moores site is acknowledged as using mod_wsgi and they are in top 10000 sites in the US.

http://blog.concentricsky.com/2009/10/michaelmoore/

link|improve this answer
feedback

Performance aside one of the big attractions for WSGI for me is the simplicity.

mod_wsgi is significantly smaller and easier to configure than mod_python.

link|improve this answer
feedback

Global Radio, the largest commercial radio company in the UK, runs on mod_wsgi behind Nginx.

See: http://capitalradio.co.uk, http://classicfm.co.uk, and http://www.heart.co.uk/.

Source: I used to work there.

link|improve this answer
feedback

Your Answer

 
or
required, but never shown