tutorial template tag languages dateformat custom django apache lighttpd

template - inclusion tags django



Apache o lighttpd (5)

Para el desarrollo, utilizo una pila LAMP local, para producción estoy usando el Contenedor Django de MediaTemple (que me encanta por cierto). El contenedor de MT usa lighthttpd. Honestamente, nunca he tenido otra experiencia con eso. Siempre he usado Apache. He estado leyendo un poco:

Aquí hay preguntas:

  • ¿Qué puntos fuertes tiene uno sobre el otro?
  • ¿Me beneficiaría usar lighthttpd en mi configuración de desarrollo?
  • ¿Qué pasa con el uso de ambos? El artículo de Linux.com habla sobre el uso de lighttpd con Apache.

El beneficio de ambos: Apache es más potente y extensible (inútil si no necesitas esa potencia, pero de todos modos ...) y lighttpd es más rápido en contenido estático. La idea es dividir su sitio en contenido estático (css, js, imágenes, etc.) y código dinámico que fluye a través de Apache.

No digo que no puedas hacer mucho con lighttpd por sí mismo. Puedes y la gente lo hace.

Si está utilizando lighttpd exclusivamente en su servidor de producción, consideraría seriamente duplicar eso en sus servidores de desarrollo y en etapas para que sepa exactamente qué esperar antes de implementar.


La forma en que la interfaz entre el servidor web y Django puede tener un mayor impacto en el rendimiento que la elección del software del servidor web. Por ejemplo, se sabe que mod_python es pesado en la RAM.

Esta pregunta y sus respuestas también discuten otras opciones del servidor web.

No me preocuparán los problemas de compatibilidad con el software del cliente (consulte el comentario de MarkR ). No he tenido tales problemas al servir Django usando lighttpd y FastCGI. Me gustaría ver un ecosistema diverso de software de servidor y cliente. Tener un buen estándar es mejor que un producto de facto de un único proveedor.


La respuesta depende de los objetivos de tus proyectos. Si va a ser un sitio a gran escala donde el tiempo de actividad es crítico y la carga es alta con lighttpd; se escala asombrosamente. El único inconveniente es que debes ser más práctico al principio. La mayoría de los hosts no admitirán esto y realmente vale la pena saber lo que estás haciendo con lighttpd.

Si es un sitio para su madre que recibirá unos miles de visitantes al mes, apache funcionará mejor. Podrá mudarse a un nuevo host mucho más fácilmente y es más fácil encontrar ayuda.


Para páginas web puramente estáticas (.gif, .css, etc.) con n solicitudes http de distintas direcciones IP: 1. Apache: ejecuta n procesos (con mod_perl, mod_php en la memoria) 2. lighttpd: ejecuta 1 proceso y 1 subproceso ( Puede asignar m hilos antes de iniciarlo)

Para páginas web puramente dinámicas (.php, .pl) con n solicitudes http de distintas direcciones IP: 1. Apache: ejecuta n procesos (con mod_perl, mod_php en la memoria) 2. lighttpd: ejecuta 1 proceso lighttpd gracias a async I / O y ejecuta m procesos rápidos-cgi para cada lenguaje de script.

Lighttpd consume mucha menos memoria. YouTube solía ser un gran usuario de lighttpd hasta que fue adquirido por Google. Vaya a su página de inicio para más información.

PD En mi empresa anterior, utilizamos ambos con un equilibrador de carga para distribuir el tráfico http según sus sufijos de URL. ¿Por qué no completamente lighttpd? Por razones de legado


Use un servidor web estándar. Apache es utilizado por el 50% de los sitios web ( Netcraft ), por lo tanto, si utiliza Apache, los navegadores web de las personas, arañas, proxies, etc., están prácticamente garantizados para trabajar con su sitio (su servidor web de todos modos).

Lighthttpd es utilizado por el 1.5% de los sitios web ( Netcraft ), por lo que es mucho menos probable que las personas prueben sus aplicaciones con él.

Cualquier diferencia de rendimiento probablemente no importe en la producción; un servidor Apache probablemente pueda atender solicitudes estáticas a un ancho de banda mucho mayor que el que tiene, en el hardware más lento que probablemente implemente en producción.