carga pesada do Apache VIRT vs memória RES

7

Eu tenho um servidor Debian 5, que recebe muito tráfego. Neste momento o servidor tem 4 GB de RAM e nenhuma memória swap. Eu vejo em cima que os processos do Apache consomem aproximadamente 180 MB de memória virtual (VIRT) cada e 16 MB de RAM real (RES). Então, quantos segmentos do Apache posso executar ao mesmo tempo? Cerca de 4 GB / 180 MB = 22 ou 4 GB / 16 MB = 256?

    
por pako 15.03.2010 / 19:53

2 respostas

8

O tamanho da memória virtual não é tão importante quanto o seu conjunto residente. A memória virtual vai incluir coisas que são mapeadas em bibliotecas compartilhadas e outras coisas (que só serão residentes na RAM física uma vez). RSS diz o que realmente está na memória, onde como Virt. informa quanto do espaço de endereço virtual disponível foi engolido.

Seu segundo cálculo será mais próximo, embora seja bem baixo. Um servidor com 4 GB de RAM pode executar muito mais do que 256 processos do Apache. Dependendo de seus padrões de tráfego e limitações de espera de E / S, rodar mais de 256 pode ser uma boa idéia, pois um bom número desses processos pode ficar esperando que o kernel remova dados de um dispositivo para outro. Também fator em coisas como COW & o fato de que tudo aponta para o mesmo 'httpd' binário, e você obtém mais eficiências.

Agora, vá e reconstrua o seu sistema com um bom espaço de troca de 2GB. O swap não funciona apenas como "memória lenta".

Como uma advertência, faz muito tempo desde que eu me importei com as especificidades do gerenciamento de memória do Linux, e pode estar um pouco fora dos meus fatos, mas a essência é sólida!

    
por 16.03.2010 / 21:56
1

Este valor está principalmente ligado à experiência com a carga atual do seu servidor.

tente coletar alguns dados com o 'apache top'. Faça algumas alterações de configuração e tentando novamente. Como eu não sei você caso de uso particular, é difícil chegar a algumas figuras concretas.

Se você quiser um consumo de memória previsível para o seu servidor web, por favor dê uma olhada link

Resolve alguns problemas de escalabilidade de uma forma muito legal.

Não é correto para todos os casos de uso, mas certamente é considerado.

Você pode implantá-lo para reduzir a carga na sua instância do apache. É adequado para servir conteúdo estático e de cache em uma configuração de proxy reverso, bem como outros cenários de alta carga.

Dê um giro, é grátis: -)

    
por 16.03.2010 / 21:20