Let me rephrase - Django is typically run as a WSGI app. uWSGI is a WSGI server that can speak HTTP or its own uwsgi protocol (currently supported by nginx and cherokee). Gunicorn is a WSGI server that can speak HTTP. So my options are:
1) nginx -> via uwsgi -> uWSGI -> via WSGI -> django
2) nginx -> via http -> uWSGI -> via WSGI -> django
3) nginx -> via http -> gunicorn -> via WSGI -> django
This article seems to say that my app really needs to talk to nginx via http, so option 2 or 3 is okay, but option 1 is bad. Why is this?
My feeling is that for the purposes of being a 12 factor app, uwsgi protocol is fine, despite how they've phrased it...
Let me rephrase - Django is typically run as a WSGI app. uWSGI is a WSGI server that can speak HTTP or its own uwsgi protocol (currently supported by nginx and cherokee). Gunicorn is a WSGI server that can speak HTTP. So my options are:
1) nginx -> via uwsgi -> uWSGI -> via WSGI -> django 2) nginx -> via http -> uWSGI -> via WSGI -> django 3) nginx -> via http -> gunicorn -> via WSGI -> django
This article seems to say that my app really needs to talk to nginx via http, so option 2 or 3 is okay, but option 1 is bad. Why is this?
My feeling is that for the purposes of being a 12 factor app, uwsgi protocol is fine, despite how they've phrased it...