Esse comportamento é controlado por meio de uma configuração do kernel chamada vm.swappiness
, que pode ser definido em um intervalo de 0 a 100. O valor padrão de 60 fará com que o sistema troque um pouco antes que a memória física esteja completamente cheia, o que ajuda a manter o desempenho sob pressão de memória, sem trocar o desempenho devido a se debatendo .
Isso pode ser desabilitado configurando-se o swap para 0, caso em que o sistema não irá trocar a menos que seja absolutamente necessário. Isso pode fazer sentido se você costuma ter muita RAM livre. No entanto, o desempenho cairá de um penhasco no momento em que a memória física do seu sistema for completamente preenchida quando o sistema for subitamente forçado a trocar em um momento inoportuno quando um aplicativo precisar de memória, e não no seu caso como seu servidor. está correndo perto de cheio.
Provavelmente é melhor você configurar o swappiness para um valor baixo (mas diferente de zero) como 10, o que reduzirá a troca desnecessária enquanto não estiver esperando até o último momento para liberar RAM quando um programa precisar dele. A melhor configuração depende do seu ambiente, então experimente diferentes configurações até obter os melhores resultados.
Para alterar a configuração do swappiness, escreva o valor desejado em /proc/sys/vm/swappiness
usando echo
como root. Para fazer alterações permanentes, adicione uma linha vm.swappiness
a /etc/sysctl.conf
(substitua 10 pelo valor desejado, conforme necessário):
vm.swappiness = 10