Configuração do Django VPS

4

Eu estou olhando para executar alguns sites do Django no meu VPS, com nginx agindo como um front-end para isso. Eu tenho tido alguns problemas com mod_python e Apache, o site só começa a errar sempre que o tráfego começa a pegar porque ele usa apenas tão muita memória RAM para cada solicitação. Então, fiz algumas pesquisas e descobri que mod_python não é minha melhor aposta para um pequeno VPS.

Minha configuração tem nginx servindo arquivos estáticos (javascript, css, imagens) e usando o memcached para reduzir drasticamente os pedidos feitos em um back-end do Apache armazenando em cache as páginas que o Apache "faz", mas isso ainda é executando mod_python , e ontem eu ainda tinha algumas pessoas dizendo que eles estavam recebendo 500 erros sem nenhum motivo.

O que eu quero fazer é usar o FastCGI para rodar o Django agora, eu li que ele pode lidar com um tráfego maior com menos RAM, mas a configuração dele foi um pouco estranha para eu entender; Eu não sou especialista em alguns dos termos sendo jogados. As principais coisas que estou vendo são estas opções:

maxspare=NUMBER      max number of spare processes / threads  
minspare=NUMBER      min number of spare processes / threads  
maxchildren=NUMBER   hard limit number of processes / threads  
method=IMPL          prefork or threaded (default prefork)

Qualquer ajuda para determinar o que devo definir para estes seria muito apreciada. Eu também gostaria de saber como / se esses processos estão sendo mencionados estão relacionados aos processos de trabalho do nginx. O servidor hospeda 4 sites que normalmente lidam com um par de mil acessos por dia, mas todos tendem a ser atingidos no mesmo período com a maior parte do tráfego, e é aí que os problemas começam.

Além disso, eu li em algum lugar sobre como usar Tornado como um servidor WSGI para Django ... isso poderia ser uma solução melhor? Obrigado!

    
por Zack 05.12.2009 / 21:08

1 resposta

3

Eu sei que esta é uma questão antiga, mas apenas no caso de alguém vir através disso - a maneira recomendada de configurar o Django no Apache atualmente é usar mod_wsgi:

Deploying Django with Apache and mod_wsgi is the recommended way to get Django into production.

mod_wsgi is an Apache module which can be used to host any Python application which supports the Python WSGI interface, including Django. Django will work with any version of Apache which supports mod_wsgi.

link

    
por 28.04.2011 / 18:25