django apache nginx mod-wsgi gunicorn

django gunicorn nginx



Apache+mod_wsgi vs nginx+gunicorn (2)

Quiero implementar un sitio django (es el código edx de código abierto en github).

Me enfrento a elegir entre usar

  1. Apache con mod_wsgi
  2. nginx con gunicorn

He usado Apache con mod_wsgi y es lo suficientemente bueno, pero no tengo experiencia con la segunda opción.

¿Cuál de estas opciones sería una mejor opción en términos de velocidad y, en cierta medida, facilidad de uso?

NB: Necesitaría ejecutar dos sitios de django diferentes en, por ejemplo, los puertos 80 y 81 y acceder a ellos desde dos subdominios diferentes.


Tengo buena experiencia con nginx y gunicorn. Siguen funcionando bien cuando finalmente he establecido todos los ajustes correctos y los he puesto en funcionamiento.

Para nginx y gunicorn son:

* nginx configuration files (/etc/nginx/sites-enabled/ and /etc/nginx/nginx.conf) * gunicorn configuration files (/etc/init/gunicorn.conf and /etc/gunicorn.d/)

He visto un tutorial para apache + mod_wsgi y parece mucho más sencillo de configurar.


Nginx es una solución realmente ligera y fácil de usar y, junto con Gunicorn , nos permite ejecutar cualquier aplicación wsgi y escalarla fácilmente. Nginx es mejor en el manejo de solicitudes, ya que no genera un nuevo proceso para cada solicitud, a diferencia de Apache.

He escrito una respuesta sobre cómo implementar django con nginx para una pregunta relacionada:

Implementando el proyecto Django con Gunicorn y nginx