Múltiplas instâncias do Apache

3

Estou executando um VPS e tenho vários sites sendo veiculados em uma instância do Apache. Problema com isso é que eu estou trabalhando em um aplicativo Django que provavelmente exigiria que eu reinicie o Apache. Existe algum problema para executar várias instâncias do Apache e cada uma delas estaria servindo um site diferente? Isso permitiria que eu reinicie uma instância sem afetar a outra.

A menos que alguém tenha uma ideia melhor?

Obrigado!

EDITAR Seria melhor executar servidores da Web mais leves para lidar com sites HTML simples em vez do Apache?

    
por Tereno 16.07.2010 / 21:36

4 respostas

1

Contanto que você aponte para registros diferentes & vincular a um IP / porta diferente, não há problema com isso em tudo. A pergunta óbvia, porém, é por que você precisa reiniciar o Apache?

    
por 16.07.2010 / 21:41
0

Para responder à sua segunda pergunta: sim, o nginx é adepto de servir arquivos HTML estáticos e, de fato, existem implementações que usam o nginx como um proxy reverso para descarregar muita carga do servidor Apache principal.

    
por 17.07.2010 / 01:38
0

Você deve tentar o trabalho do Django sem reiniciar o apache. A maioria dos ambientes secundários funciona bem durante o trabalho de desenvolvimento, sem necessidade de parar e iniciar o servidor da Web repetidamente.

Mas, sim, você pode executar qualquer número de instâncias de contornos, desde que você tenha certeza de que o arquivo de configuração do seu segundo servidor está apontando para recursos diferentes. Como:

  • portas, desde que a porta seja diferente, você pode usar o mesmo IP
  • arquivos de log, isso é grande e não óbvio. o apache geralmente não registra o syslog, mas abre diretamente seus arquivos de log
  • podem ser algumas outras coisas que colidem, veja todas as opções em httpd.conf

Sobre a exibição de arquivos estáticos. Sim, você pode usar um servidor da web mais leve para fazer isso. Mas, antes de ir para o esforço, tenha certeza de que lhe fará bem algum. O apache está realmente usando recursos de que você precisa em outro lugar? Talvez apenas configure o apache para não iniciar muitos processos filhos. Certifique-se de que a complicação adicional se pague, porque, com certeza, confundirá alguém quando tentar descobrir como tudo está funcionando.

    
por 17.07.2010 / 05:27
0

Você pode liberar a configuração do Apache com "apachectl gracioso" ("httpd -k graceful").

De documentação do Apache :

Gracefully restarts the Apache httpd daemon. If the daemon is not running, it is started. This differs from a normal restart in that currently open connections are not aborted. A side effect is that old log files will not be closed immediately. This means that if used in a log rotation script, a substantial delay may be necessary to ensure that the old log files are closed before processing them. This command automatically checks the configuration files as in configtest before initiating the restart to make sure Apache doesn't die. This is equivalent to apachectl -k graceful.

    
por 23.08.2010 / 11:17