Qual dos Lighttpd e Nginx é, com base na sua experiência, mais adequado para o Django? Eu usei os dois e quase não consigo notar nenhuma diferença, eles simplesmente funcionam bem ... Existem casos de uso em que um deles age muito melhor que o outro? Ao responder, leve em consideração a simplicidade da configuração e a eficiência.
Minha configuração usual é ter um processo separado do Django FCGI (como em ./manage.py runfcgi daemonize=false port=8098 host=127.0.0.1
) iniciado via daemontools ou um init.d
script e lighty / nginx atuando como um proxy reverso.
Ah, e se você acha que algum outro servidor http é muito melhor para o Django do que o Lighty e o Nginx, não hesite em compartilhar seus pensamentos.
Respostas:
Tanto o Nginx quanto o Lighttpd são escolhas melhores do que o apache quando se trata de usá-los como proxy reverso para Django, Rails, etc. Ambos suportam proxy FastCGI e Http. Ambos oferecem um único modelo baseado em select () (ou melhor) encadeado para uso eficiente dos recursos.
No entanto, meu voto vai para o Nginx, ele tem uma base de usuários muito ativa (atualmente é a queridinha do conjunto Ruby on Rails) e está em desenvolvimento ativo. Lighttpd pode ser confundido com estar morto há mais de 2 anos e ainda estamos esperando uma versão beta de 1,5.
fonte
O mod_wsgi é uma maneira recomendada de obter a aplicação Django em produção. O mod_wsgi do Apache é muito melhor que o nginx. Você não consegue encontrar o pacote oficial (nas atuais distribuições Linux) para o mod_wsgi do nginx e precisa compilá-lo sozinho. Eu gosto do nginx, mas se você quiser jogar em segurança, brinque com o Apache mod_wsgi.
fonte
O mod-wsgi é a melhor maneira de executar aplicativos django em produção, menos complicado que o fastcgi e sem problemas com o tempo de inicialização, etc.
O mod-wsgi real é para o apache, mas há outro mod-wsgi para o nginx. O apache é brilhante, não posso comentar sobre o nginx.
Pessoalmente, eu ficaria longe do lighttpd. Ele não tem a estabilidade do nginx, ainda não vi um caso do lighttpd que não tenha um vazamento de memória.
Basicamente, minha primeira opção seria o apache 2.2, minha segunda opção seria o nginx.
Não acredite no hype sobre tempo de resposta e escalabilidade. A verdade é que isso simplesmente não importa. (Google usa Apache).
fonte
Além disso, considere usar o Google App Engine. Você pode hospedar seu projeto Django lá de graça e não precisa se preocupar em manter a infraestrutura do servidor.
fonte