¿Alguien puede explicar la diferencia entre apache mod_wsgi en modo daemon y django fastcgi en modo enhebrado? Ambos usan hilos para concurrencia, creo. Supongamos que estoy usando nginx como interfaz para apache mod_wsgi.Implementando Django (fastcgi, apache mod_wsgi, uwsgi, gunicornio)
UPDATE:
estoy comparando django construido en fastcgi (./ método manage.py = maxchildren roscados = 15) y en el modo de mod_wsgi 'daemon' (hilos ejemplo WSGIDaemonProcess = 15). Ambos usan hilos y adquieren GIL, ¿estoy en lo cierto?
UPDATAE 2:
Así que si ambos son similares, ¿hay algún beneficio de Apache mod_wsgi contra fastcgi. Veo esas ventajas de fastcgi:
- que no necesitamos Apache
- consumimos menos RAM
- Noté que fastcgi tiene menor sobrecarga
UPDATAE 3:
Ahora estoy contento con nginx + uwsgi.
UPDATAE 4:
ahora estoy feliz con nginx + gunicorn :)
Estoy comparando django construido en fastcgi (./ manage.método py = threaded maxchildren = 15) y mod_wsgi en modo 'daemon' (WSGIDaemonProcess ejemplo threads = 15). –
Sí, ambos confían en el multihilo para manejar solicitudes simultáneas. El GIL se usa incluso si se trata de un servidor WSGI de subproceso único, no se puede evitar fácilmente sin volver a compilar el código fuente de Python y deshabilitar el soporte de subprocesos. Sin embargo, hazlo y no puedes usar mod_wsgi ya que no es compatible con Python que tiene el subprocesamiento deshabilitado. –
¿Qué quiere decir con "GIL se usa incluso si se trata de un único servidor WSGI con subprocesos"? ¿Se usa cuando configuramos mod_wsgi para fork procesos en lugar de hilos? –