G

Graham Dumpleton

blog.dscpl.com.au · Personal blog · on HN since 2008

Graham Dumpleton, author of mod_wsgi, writes about hosting Python web applications, Apache, nginx and Python decorators.

What HN saysHN commenters recommend him as the Python world's web hosting expert and link his posts on nginx, mod_wsgi and decorators.
23HN people shared it
5linked it in comments
19stories submitted
110story points
9 years agolast shared
2008people per year2026

Most-shared posts

  1. 1
    Blocking requests and nginx version of
    3 people · first shared 2009
  2. 2
    How you implemented your Python decorator is wrong
    2 people · 1 points · first shared 2014 · discussion on HN
  3. 3
    The mod_python project is now officially dead.
    1 people · 39 points · first shared 2010 · 3 comments on HN
  4. 4
    Improved WSGI script for Django (by mod-wsgi author)
    1 people · 27 points · first shared 2010 · 1 comments on HN
  5. 5
    Mod_python project soon to be officially dead
    1 people · 9 points · first shared 2010 · discussion on HN
  6. 6
    Version 2.0 of mod_wsgi is now available.
    1 people · 5 points · first shared 2008 · 1 comments on HN
  7. 7
    Let me Google that for you
    1 people · 5 points · first shared 2012 · discussion on HN
  8. 8
  9. 9
    Is PEP 3333 the final solution for WSGI on Python 3?
    1 people · 2 points · first shared 2010 · discussion on HN
  10. 10
    A roadmap for the Python WSGI implementation.
    1 people · 2 points · first shared 2009 · discussion on HN
  11. 11
    Musings about PaaS and running many small micro services
    1 people · 2 points · first shared 2015 · discussion on HN
  12. 12
    Transparent object proxies in Python
    1 people · 2 points · first shared 2014 · 1 comments on HN
  13. 13
    Solving some of the problems with wsgi.file_wrapper
    1 people · 2 points · first shared 2011 · discussion on HN
  14. 14
  15. 15
    Load spikes and excessive memory usage in mod_python
    1 people · 2 points · first shared 2009 · discussion on HN

What HN people wrote when they linked it

davepeck · 2012-05-14
It's worth pointing to Graham Dumpleton's blog [1] -- he seems to be the Python world's web hosting ninja. See the great slide deck [2] from his recent talk on hosting python web apps [3] -- the deck nicely captures the recent state of the world. Apache2 + mod_wsgi in Daemon mode is probably the most common approach (especially for VPSs), although I know several people who prefer nginx + gunicorn + supervisor. Both are sane and stable options at this point. (The python web frameworks themselves all speak WSGI and there are about seventeen million of 'em to choose from.) [1] http://blog.dscpl.com.au/ [2] http://modwsgi.googlecode.com/files/mod_wsgi-pycon-sydney-2011.pdf [3] http://www.youtube.com/watch?v=PWIvm-uloMg
bad_user · 2011-06-07
It's not the same - you have to compile Nginx with mod_wsgi support. It's not as simple as doing an "apt-get install nginx" and it may compile with your version, or it may not compile. Also, read this: http://blog.dscpl.com.au/2009/05/blocking-requests-and-nginx-version-o… mod_wsgi is an interesting example. Surely it has the wrong architecture for Nginx and something better could surely be written. But mod_wsgi for Apache simply kicks ass, being a server that manages everything for you with low overhead and good performance caracteristics. No need for supervisord or any of that crap. Some people go as far as recommending running Nginx in front of Apache, with all the overhead that brings, just for mod_wsgi (although the same could be said about mod_php). That's the thing about Apache - it's so mature and has so much traction that you can find quality plugins for anything and everything, being an all you can eat buffet. But then if you're going to put Nginx in front of Apache, why go with Nginx instead of Varnish: http://www.varnish-cache.org/ -- which is designed from the ground-up to function as a high-performance proxy cache (the Nginx plugin for proxy caching sucks donkey balls IMHO) What I'm trying to say here is that Nginx is very far from a one-size-fits-all. It's awesome for at least one website I've got written in Ruby on Rails and I'm using it in combination with Passenger (Ruby's mod_wsgi). But for all my other use-cases, I'm starting with Apache…
celias · 2015-09-14
There's also Graham Dumpleton's "How you implemented your Python decorator is wrong" blog post - http://blog.dscpl.com.au/2014/01/how-you-implemented-your-python.html and the related "Decorators and monkey patching" list http://blog.dscpl.com.au/p/decorators-and-monkey-patching.html
moe · 2009-11-21
As far as I know (correct me if I'm wrong) passenger is maintenance free. Anything else wouldn't make much sense anyways. It maintains a pool of workers and distributes load over them, just as it should be. mod_wsgi for apache seems to do the same so I should have been more specific: I'm still waiting for a proper mod_wsgi for nginx. The nginx mod_wsgi is not the same as the apache version. It has some very unfortunate problems which effectively rule it out for production use: http://blog.dscpl.com.au/2009/05/blocking-requests-and-nginx-version-o…

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close