Falta de Memória na Máquina

No post anterior falei sobre a memória livre no sistema operacional, no qual apresentava um gráfico com grande variação na quantidade de memória livre.

Afinal, como descobrir se falta memória RAM no meu servidor? Existe uma forma bastante simples usando a ferramenta do Performance Monitor. Basta acompanhar o contador “Memory: Available MBytes” .

image

Esse contador apresenta a evolução da memória ao longo do dia e permite descobrir os horários *exatos* no qual o servidor sofreu de pressão por memória. No exemplo abaixo, observamos que às 15h e 16h30 foram momentos bastante críticos.

image

Sintomas:

  • Uma ou mais aplicações aumentam o consumo de memória
  • Sistema Operacional inicia a paginação de memória de todos os processos

Nesse caso específico, haviam duas instâncias SQL Server rodando na mesma máquina. Nesse caso, recomendamos utilizar a configuração do “Max Server Memory” para limitar o tamanho das instâncias e evitar a paginação.

Problema:

A paginação dos processos para disco (Page File) causa lentidão temporária no servidor e pode prejudicar os processos. A lentidão pode durar desde segundos a alguns minutos. Seria isso um problema? Tudo depende da carga:

  • Uma rotina batch que dura horas não será visivelmente afetada
  • Acessos de milissegundos podem demorar segundos (uma eternidade!) para finalizar

Atualmente com máquinas de 64GB ou mais de memória, acho prudente deixar pelo menos 2GB livre. Essa memória livre seria uma sobrevida em caso de picos de consumo.

Você discorda? Deixe seu comentário!