[Inclusão Digital]Apache2 - Consumo de SWAP.

Luis H. Forchesatto luisforchesatto em gmail.com
Quarta Abril 4 13:51:22 BRT 2012


Olá

Embora seja útil o script, já sei quais processos são os consumidores de
memória. ;)

Mas valeu mesmo assim.

Att.

Em 4 de abril de 2012 08:59, Alexandre J. Correa - Onda Internet <
alexandre em onda.net.br> escreveu:

> Shell script pode te ajudar
>
> #!/bin/bash
> # Get current swap usage for all running processes
> # Erik Ljungstrom 27/05/2011
> SUM=0
> OVERALL=0
> for DIR in `find /proc/ -maxdepth 1 -type d | egrep "^/proc/[0-9]"` ; do
> PID=`echo $DIR | cut -d / -f 3`
> PROGNAME=`ps -p $PID -o comm --no-headers`
> for SWAP in `grep Swap $DIR/smaps 2>/dev/null| awk '{ print $2 }'`
> do
> let SUM=$SUM+$SWAP
> done
> echo "PID=$PID - Swap used: $SUM - ($PROGNAME )"
> let OVERALL=$OVERALL+$SUM
> SUM=0
>
> done
> echo "Overall swap used: $OVERALL"
>
>
> Em 03/04/2012 22:34, Eduardo Schoedler escreveu:
>
>  Você hospeda páginas php?
>> Nao tem algum problema na programação do site? Leak de memória?
>>
>> --
>> Eduardo Schoedler
>> Enviado via iPhone
>>
>> Em 03/04/2012, às 13:59, Luis Henrique F<luisforchesatto em gmail.com>
>>  escreveu:
>>
>>  Jaiton.
>>>
>>> Obrigado pelo tutorial. O apache já encontra-se configurado de acordo com
>>> nossa demanda:
>>>
>>>    StartServers              20
>>>    MaxClients                300
>>>    MinSpareThreads       5
>>>    MaxSpareThreads      50
>>>
>>> Estou agora analisando a probabilidade de ser algum bug no sistema ou
>>> falha
>>> conhecida, mas acredito que não seja isso. Obrigado por enquanto.
>>>
>>> Att.
>>>
>>>
>>> Em 3 de abril de 2012 13:04, solution network - jaitonys<
>>> jaitonys em solutionnetwork.net.**br <jaitonys em solutionnetwork.net.br>>
>>>  escreveu:
>>>
>>>  acredito que isso responde a sua pergunta e sobra
>>>>
>>>>
>>>>  Performance do Apache
>>>>  <http://www.hardware.com.br/****livros/linux-redes/**<http://www.hardware.com.br/**livros/linux-redes/**>
>>>> performance-apache.html<http:/**/www.hardware.com.br/livros/**
>>>> linux-redes/performance-**apache.html<http://www.hardware.com.br/livros/linux-redes/performance-apache.html>
>>>> >
>>>> O número de instâncias do servidor é uma das configurações mais
>>>> diretamente relacionadas à performance do servidor e ao consumo de
>>>> memória.
>>>> O Apache é capaz de responder a um número indefinido de acessos
>>>> simultâneos, de acordo com o link e recursos da máquina. Para cada
>>>> requisição simultânea, é necessário que exista uma instância do Apache
>>>> carregada na memória.
>>>>
>>>> Quando o cliente acessa uma página, ele monopoliza uma dessas instâncias
>>>> abertas até que a requisição seja concluída, ou seja, até que a página
>>>> seja
>>>> carregada ou o arquivo baixado. Em horários de alta demanda, são abertas
>>>> mais instâncias do servidor Apache, que vão sendo fechadas (para
>>>> economizar
>>>> memória) conforme os acessos diminuem.
>>>>
>>>> O número de instâncias abertas é determinada pelas quatro linhas abaixo,
>>>> dentro do arquivo "/etc/apache2/apache2.conf":
>>>>
>>>> StartServers 5
>>>> MinSpareServers 5
>>>> MaxSpareServers 10
>>>> MaxClients 20
>>>>
>>>> A opção "StartServers" determina o número padrão de servidores que
>>>> ficarão
>>>> carregados na memória, respondendo a requisições. Cada instância ocupa
>>>> cerca de 2 MB de memória (um pouco mais de acordo com as opções de
>>>> compilação usadas), de forma que 5 instâncias consomem cerca de 10 MB de
>>>> memória do servidor.
>>>>
>>>> Além das instâncias principais, temos instâncias "reservas", que ficam
>>>> disponíveis para absorver rapidamente picos de acesso, sem que o Apache
>>>> tenha que perder tempo carregando mais instâncias para só depois
>>>> começar a
>>>> responder às requisições. As opções "MinSpareServers" e
>>>> "MaxSpareServers"
>>>> determinam o número mínimo e máximo de "reservas", sendo que o número
>>>> real
>>>> flutua entre os dois parâmetros, de acordo com a demanda.
>>>>
>>>> A opção "MaxClients" é a parede de concreto, o número máximo de conexões
>>>> simultâneas que o Apache aceita manter abertas, independentemente da
>>>> demanda. Quando esse número é atingido, o acesso ao site fica cada vez
>>>> mais
>>>> lento, pois cada novo visitante "entra na fila" e precisa esperar que
>>>> uma
>>>> das instâncias do Apache fique livre, antes de conseguir carregar cada
>>>> página.
>>>>
>>>> Essa configuração default do Apache é adequada a um site de baixa
>>>> demanda.
>>>> Para um servidor dedicado, que hospede um site com muitas visitas, é
>>>> necessário ajustar estes valores de acordo com a demanda. Uma forma
>>>> fácil
>>>> de verificar o status do servidor é ativar a diretiva "server-status"
>>>> dentro do arquivo "/etc/apache2/apache2.conf". Adicione (ou descomente)
>>>> as
>>>> linhas abaixo:
>>>>
>>>> <Location /server-status>
>>>> SetHandler server-status
>>>> Order deny,allow
>>>> Deny from all
>>>> Allow from 200.234.23.233
>>>> # (onde o 200.234.23.233 é o IP do micro do onde o relatório será
>>>> acessado)
>>>> </Location>
>>>>
>>>> Ative a configuração usando o comando "/etc/init.d/apache2
>>>> force-reload".
>>>> A partir daí, você pode ver um instantâneo do status do servidor
>>>> acessando
>>>> a pasta "server-status", como em "http://kurumin.com.br/server-**
>>>> **status <http://kurumin.com.br/server-**status><http://kurumin.com.**
>>>> br/server-status <http://kurumin.com.br/server-status>>",
>>>> a partir do navegador.
>>>>
>>>> A oitava linha indica o número de instâncias abertas, como em:
>>>>
>>>> 8 requests currently being processed, 5 idle workers
>>>>
>>>> Nesse exemplo temos 8 conexões abertas e 5 instâncias reservas do Apache
>>>> abertas, prontas para receber novas conexões. A velocidade do acesso ao
>>>> site está normal.
>>>>
>>>> Mas, o que acontece no caso de um pico de acesso, com 50 acessos
>>>> simultâneos? Na configuração padrão você teria:
>>>>
>>>> 20 requests currently being processed, 0 idle workers
>>>>
>>>> Ou seja, o Apache responde às primeiras 20 conexões e coloca as demais
>>>> na
>>>> fila, fazendo com que os visitantes tenham que esperar vários segundos.
>>>> Em
>>>> casos mais extremos, o tempo de espera poderia ser tamanho que o site
>>>> ficaria virtualmente fora do ar. É o que muitas vezes acontece com links
>>>> publicados em sites muito acessados, como o slashdot.org.
>>>>
>>>> Isso pode ser minimizado configurando o Apache corretamente. Se você tem
>>>> um servidor dedicado, com 256 MB de RAM, por exemplo, onde cada
>>>> instância
>>>> do Apache consome 2 MB, você poderia deixar a opção "MaxClients" com o
>>>> valor "80" ou "100", de forma que o Apache aceite conexões até esgotar o
>>>> limite da memória disponível (lembre-se de que além do Apache, temos o
>>>> MySQL, PHP e outros recursos, que também consomem memória). Acima disso
>>>> não
>>>> adianta, pois o servidor passaria a usar memória swap, o que
>>>> comprometeria
>>>> o desempenho.
>>>>
>>>> A partir daí, você pode ajustar as opções "StartServers" e
>>>> "MinSpareServers" de acordo com o número médio de acessos simultâneos.
>>>> Em
>>>> um site com, em média, 10 acessos simultâneos e picos de 20 ou 30
>>>> acessos,
>>>> uma boa configuração seria:
>>>>
>>>> StartServers 10
>>>> MinSpareServers 10
>>>> MaxSpareServers 20
>>>> MaxClients 80
>>>>
>>>> Outra opção que afeta negativamente o desempenho é a "HostNameLookups",
>>>> onde o Apache verifica a origem de cada acesso, fazendo uma busca de
>>>> domínio. Ativar essa opção permite criar estatísticas de acesso mais
>>>> detalhadas, incluindo os países e provedores de acesso usados pelos
>>>> visitantes, mas tem um impacto negativo muito grande na performance de
>>>> um
>>>> servidor congestionado. No Apache 2 ela já vem desativada por padrão,
>>>> mas
>>>> em versões antigas era necessário desativá-la manualmente:
>>>>
>>>> HostNameLookups Off
>>>>
>>>> Você pode simular tráfego no seu servidor, verificando como ele se
>>>> comporta com níveis variados de tráfego usando o comando "ab", que faz
>>>> parte do pacote "apache-utils". Chame-o indicando o número de
>>>> requisições
>>>> simultâneas e a página que será carregada, como em:
>>>> *$ ab -n 1000 -c 20 http://www.meusite.com/teste.****php*<http://www.meusite.com/teste.**php*>
>>>> <http://www.meusite.com/**teste.php*<http://www.meusite.com/teste.php*>
>>>> >
>>>>
>>>> Nesse exemplo, estamos fazendo 1000 acessos à página, mantendo 20
>>>> requisições simultâneas. Se possível, lance o teste a partir de outro
>>>> servidor com link rápido, ou peça para vários amigos rodarem o comando
>>>> simultaneamente, cada um usando sua conexão. Isso transformará o teste
>>>> em
>>>> algo mais parecido com uma situação normal.
>>>>
>>>> link de onde foi pego as informações http://www.hardware.com.br/**
>>>> livros/linux-redes/****performance-apache.html<http:/**
>>>> /www.hardware.com.br/livros/**linux-redes/performance-**apache.html<http://www.hardware.com.br/livros/linux-redes/performance-apache.html>
>>>> >
>>>>
>>>>
>>>>
>>>> Em 03-04-2012 10:16, Jeimerson C. Chaves escreveu:
>>>>
>>>> Outra coisa quanto você tem de SWAP e quanto você tem de RAM?
>>>>
>>>>> Em 3 de abril de 2012 10:14, Jeimerson C. Chaves<jeimerson em bsd.com.br
>>>>> >**
>>>>> escreveu:
>>>>>
>>>>> Amigo, qual a versão do seu apache?
>>>>>
>>>>>>
>>>>>>
>>>>>> Em 3 de abril de 2012 10:04, V. Feitoza<vfeitoza em gmail.com>
>>>>>> escreveu:
>>>>>>
>>>>>> Caro,
>>>>>>
>>>>>>  Monitora o apache e limita o numero de processos por
>>>>>>> requisições/clientes.
>>>>>>> Verifica ainda de onde vem tanto acesso.
>>>>>>>
>>>>>>> Virtual Word - O mundo ao seu alcance.
>>>>>>> Victor Feitoza
>>>>>>> Gerente de TI
>>>>>>> ______________________________****_________________
>>>>>>> Inclusaodigital mailing list
>>>>>>> Inclusaodigital em anid.com.br
>>>>>>> http://mail.anid.com.br/****mailman/listinfo/****inclusaodigital<http://mail.anid.com.br/**mailman/listinfo/**inclusaodigital>
>>>>>>> <http://mail.**anid.com.br/mailman/listinfo/**inclusaodigital<http://mail.anid.com.br/mailman/listinfo/inclusaodigital>
>>>>>>> >
>>>>>>>
>>>>>>>
>>>>>>>  ______________________________****_________________
>>>>>>
>>>>> Inclusaodigital mailing list
>>>>> Inclusaodigital em anid.com.br
>>>>> http://mail.anid.com.br/****mailman/listinfo/****inclusaodigital<http://mail.anid.com.br/**mailman/listinfo/**inclusaodigital>
>>>>> <http://mail.**anid.com.br/mailman/listinfo/**inclusaodigital<http://mail.anid.com.br/mailman/listinfo/inclusaodigital>
>>>>> >
>>>>>
>>>>>
>>>>>  --
>>>> ______________________________****_________________
>>>> Inclusaodigital mailing list
>>>> Inclusaodigital em anid.com.br
>>>> http://mail.anid.com.br/****mailman/listinfo/****inclusaodigital<http://mail.anid.com.br/**mailman/listinfo/**inclusaodigital>
>>>> <http://mail.**anid.com.br/mailman/listinfo/**inclusaodigital<http://mail.anid.com.br/mailman/listinfo/inclusaodigital>
>>>> >
>>>>
>>>>
>>>
>>> --
>>> *
>>> ______________________________**______________________________
>>> If you can make God bleed....people will leave to believe him!*
>>> ______________________________**_________________
>>> Inclusaodigital mailing list
>>> Inclusaodigital em anid.com.br
>>> http://mail.anid.com.br/**mailman/listinfo/**inclusaodigital<http://mail.anid.com.br/mailman/listinfo/inclusaodigital>
>>>
>> ______________________________**_________________
>> Inclusaodigital mailing list
>> Inclusaodigital em anid.com.br
>> http://mail.anid.com.br/**mailman/listinfo/**inclusaodigital<http://mail.anid.com.br/mailman/listinfo/inclusaodigital>
>>
>>
>
> --
> Sds.
>
> Alexandre Jeronimo Correa
> Sócio-Administrador
>
> Onda Internet
> www.onda.net.br
>
> IPV6 Ready !
>
>
> ______________________________**_________________
> Inclusaodigital mailing list
> Inclusaodigital em anid.com.br
> http://mail.anid.com.br/**mailman/listinfo/**inclusaodigital<http://mail.anid.com.br/mailman/listinfo/inclusaodigital>
>



-- 
*
____________________________________________________________
If you can make God bleed....people will leave to believe him!*


Mais detalhes sobre a lista de discussão Inclusaodigital