Otimizando o Apache e o MySQL no Linux Xen VPS

10

Eu tenho um servidor virtual privado do Xen (VPS) rodando o Ubuntu 8.10, com 128M de RAM.

Eu encontrei várias páginas "como otimizar o Apache e o MySQL para VPS com pouca memória" via Google, mas elas fornecem informações contraditórias. Então, estou perguntando ao Server Fault: como alguém otimiza o Apache e o MySQL para uma configuração de VPS com pouca memória?

Algumas pessoas sugeriram usar o nginx em vez do Apache. Eu vou olhar para isso, mas eu prefiro ficar com o Apache, se possível, apenas para evitar ter que aprender tudo sobre a configuração de pilhas de aplicativos em cima de um servidor web desconhecido (para mim).

    
por Kristopher Johnson 23.08.2009 / 19:04

3 respostas

7

O Nginx é ótimo, mas se você quiser ficar com o Apache, é possível reduzi-lo um pouco das configurações padrão:

  • Use o MPM worker em vez de prefork (com o worker O MPM Apache não possui mais um modelo "process per connection").
  • Veja todos os módulos compartilhados que você está carregando, livre-se de qualquer um que você não precise.
  • Evite incorporar servidores de aplicativos dentro do Apache (por exemplo, mod_python, mod_php, etc) se puder evitá-los. Em vez disso, execute servidores de aplicativos em um processo separado e tenha um proxy Apache para eles (ou seja, para o código Python, use mod_wsgi no modo daemon). Desta forma, seus threads do Apache que estão simplesmente servindo conteúdo estático não serão desnecessariamente inchados.
  • Na sua configuração do Apache, reduza as configurações StartServers, MaxClients, MinSpareThreads e MaxSpareThreads. Dependendo da sua carga esperada, às vezes, você pode reduzi-los por um fator de cinco ou mais a partir das configurações padrão.
por 30.04.2009 / 15:00
2

Se você tiver restrições de memória, recomendo usar o nginx como alternativa, se possível. Ele consome muito menos memória do que o Apache e, dependendo das suas necessidades, pode ser tudo o que você precisa.

Como bônus, o nginx tende a ser significativamente mais rápido que o Apache. =)

    
por 30.04.2009 / 11:24
2

Afaste-se do apache, o processo por modelo de conexão não será reproduzido com o seu VPS com pouca memória.

Sugiro o nginx como substituto.

    
por 30.04.2009 / 13:46