Pessoal, acabei de montar um pequeno servidor para uma única aplicação.
CentOS 6.5, Php 5.4.26, MySql 5.5, 1GB de Ram.
Sempre usei o ubuntu server, mas aproveitei a oportunidade para aprender um pouco sobre essa distribuição.
Tenho notado algo que acho estranho, talvez por não conhecer tão bem o sistema.
Quando reinicio o servidor, a memória livre está em torno de 750MB.
Quando o sistema está em uso, por 4 ou 5 usuários no maximo, a memória livre cai para míseros 16MB. Mesmo assim o sistema não fica lento nem dá erro de falta de memória.
O problema é que, quando não tem ninguém usando, o sistema não libera memória, ficando sempre com a memória livre em torno de 16MB livres.
Um exemplo do top:
top - 10:50:09 up 16:17, 1 user, load average: 0.09, 0.04, 0.05
Tasks: 110 total, 1 running, 109 sleeping, 0 stopped, 0 zombie
Cpu(s): 9.5%us, 0.3%sy, 0.0%ni, 90.0%id, 0.2%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 1030452k total, 1013836k used, 16616k free, 72044k buffers
Swap: 2097144k total, 500k used, 2096644k free, 200864k cached
Tenho acompanhado a manhã inteira e esses valores não mudam quase nada.
O que mais varia é o “CPU us”: de 0 a 15% e o “CPU id”: de 80 a 95%
O restante praticamente não muda.
Pergunta: Não há um modo do sistema otimizar melhor a memória livre, liberando recursos quando não está em uso?