We have an app deployed using gunicorn_django in production. I've noticed that it's no longer recommended. I'm wondering why it's not recommended, and whether we need to migrate to the newer way.
From https://docs.djangoproject.com/en/dev/howto/deployment/wsgi/gunicorn/
If you run Django 1.4 or newer, it’s highly recommended to simply run your application with the WSGI interface using the gunicorn command.
The essential part of gunicorn_django, wsgi.py, became integrated in Django itself.
To quote an already existing answer:
Starting with Django 1.4, your project will already have a
wsgi.py, which can be used with any wsgi server (of which there are many, gunicorn being just one).Essentially the old Django integration for
gunicornwas just a convenience to get you up and running faster, but it's no longer necessary because all Django projects now havewsgi.py.
UPDATE
First of all, in Gunicorn 18.0 gunicorn_django became deprecated.
Second, since the first writing of this answer I have personally encountered obscure errors that
were specific to gunicorn_django in conjunction with --settings command line parameter (gunicorn command and ./manage.py runserver worked fine).
Namely, the obscure import error application.some_model: 'field' has a relation with model another_application.AnotherModel, which has either not been installed or is abstract.
So, no, I would not recommend you using gunicorn_django in your new projects.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With