Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Portuguese

 A fim de entendermos um pouco melhor essa seção, vamos ilustrar uma fotografia típica de log de memória.

Para isso, vamos considerar uma máquina com os seguintes tamanhos de memória:

  • 32 GB de RAM
  • 34 GB de SWAP
  • 66 GB de Memória Virtual (RAM+SWAP)


E configuramos da seguinte maneira:


[TEC.APPSERVER.MEMORY]
ServerMemoryLimit=8000
GlobalMemoryLimit=24000
ServerVirtualMemoryLimit=22000
GlobalVirtualMemoryLimit=60000


E em um dado momento, essa foi a fotografia de memória logada:

Bloco de código
languagecpp
titleExemplo de log
----------- Memory Percentages ------------

Resident Memory Limit (srv 8000 MB  /  glb 24000 MB)
                                                            tot   lim
r-srv [===.........|.....................................]   5%   20%
r-glb [=================================....|............]  66%   90%


Virtual Memory Limit (srv 22000 MB  /  glb 60000 MB)
                                                            tot   lim
v-srv [==..............|.................................]   3%   10%
v-glb [=====================================........|....]  73%   82%
Informações

Internamente, o appserver monitora os limites configurados e toma ações:

  • se chegar a 80% do limite, o servidor começa a emitir mensagens de alerta (console.log);
  • quando chega a 90% do limite, o serviço passa a recusar novas conexões e novos jobs;
  • se chegar a 95% do limite, o consumo é considerado crítico e a operação poderia considerar fechar algumas das tarefas abertas.

...