¿Cuál de Lighttpd y Nginx es, basándose en su experiencia, más adecuado para Django? He usado ambos y casi no noto ninguna diferencia, simplemente funcionan bien ... ¿Hay algún caso de uso cuando uno de ellos actúa mucho mejor que el otro? Al responder, tenga en cuenta la simplicidad de la configuración y la eficiencia.
Mi configuración habitual es tener un proceso Django FCGI separado (como en ./manage.py runfcgi daemonize=false port=8098 host=127.0.0.1
) lanzado a través de daemontools o un init.d
script y lighty / nginx actuando como un proxy inverso.
Ah, y si cree que algún otro servidor http es mucho mejor para Django que Lighty y Nginx, no dude en compartir sus pensamientos.
Respuestas:
Tanto Nginx como Lighttpd son mejores opciones que apache cuando se trata de usarlos como proxy inverso para Django, Rails, etc. Ambos admiten FastCGI y Http. Ambos ofrecen un modelo basado en una sola selección () (o mejor) para un uso eficiente de los recursos.
Sin embargo, mi voto es para Nginx, tiene una base de usuarios muy activa (actualmente es la favorita del conjunto Ruby on Rails) y está en desarrollo activo. Lighttpd podría confundirse con estar muerto, más de 2 años y todavía estamos esperando una versión beta de 1.5.
fuente
mod_wsgi es una forma recomendada de poner la aplicación Django en producción. El mod_wsgi de Apache es mucho mejor que nginx. No puede encontrar el paquete oficial (en las distribuciones actuales de Linux) para mod_wsgi de nginx y necesita compilarlo usted mismo. Me gusta nginx pero si quieres jugar seguro, juega con Apache mod_wsgi.
fuente
mod-wsgi es la mejor manera de ejecutar aplicaciones de django en producción, menos complicado que fastcgi y sin problemas con los tiempos de inicio, etc.
El mod-wsgi real es para apache, pero hay otro mod-wsgi para nginx. El apache es brillante, no puedo comentar sobre el nginx.
Personalmente, me mantendría alejado de lighttpd. No tiene la estabilidad de nginx, todavía no he visto un caso de lighttpd que no tenga una pérdida de memoria.
Básicamente, mi primera opción sería apache 2.2, mi segunda opción sería nginx.
No creas la exageración sobre el tiempo de respuesta y la escalabilidad. La verdad es que simplemente no importa. (Google usa Apache).
fuente
Además, considere usar Google App Engine. Puede alojar su proyecto Django allí de forma gratuita y no tener que preocuparse por mantener la infraestructura del servidor.
fuente