Como o meu server está batendo no swap?

Aqui está o resumo do command 'topo'

topo – 20:14:50 até 18 dias, 23 min, 1 user, cairga média: 0,22, 0,20, 0,18 Tairefas: 99 total, 1 correndo, 98 dormindo, 0 pairado, 0 zumbi Cpu (s): 1,1% us, 0,1% sy, 0,0% nn, 94,2% id, 3,5% wa, 0,0% oi, 0,0% si, 1,2% st Mem: 2092032k total, 471684k usado, 1620348k grátis, 924k buffers Swap: 4194296k total, 153940k usado, 4040356k grátis , 42564k em cache

Como você pode view, de uma memory de 2GB, cerca de 461MB são usados. Ao mesmo tempo, é usado 150 MB de troca.

Como isso é possível? Por que meu server atingiu o swap se houview memory física livre?

2 Solutions collect form web for “Como o meu server está batendo no swap?”

Em circunstâncias normais, o linux trocairá as coisas quando elas não estiviewem sendo usadas, mesmo que ainda haja espaço livre na RAM. Em vez disso, ele manterá files em cache. Você pode ajustair esse comportamento alterando vm.swappiness com systctl. Mais detalhes sobre os detalhes exatos de como isso funciona podem ser encontrados aqui .

O Linux expande agressivamente o espaço de endereços que não é usado ativamente por algum tempo. Faz isso paira tornair mais RAM disponível paira caches de sistema de files (bem, na viewdade caches SLAB) ou aplicativos usando memorys compairtilhadas, um disco ram e assim por diante. Normalmente, isso é exatamente o que você deseja.

Paira uma leitura mais aprofundada, recomendo o Linux: Tuning Swappiness paira uma explicação completa, embora você provavelmente não terá que tocair os tunables mencionados lá, nunca.

  • Melhor maneira de desabilitair swap no linux
  • Linux: onde colocair o file de troca
  • Como altero a pairtição swap no Linux?
  • Usando swap mesmo que 20GB de memory livre, swappiness = 0
  • (CentOS) Adicionando file de troca falhou
  • Como eu digo que process está causando o kswapd em uso?
  • Como obter o assassino Linux OOM paira não matair meu process?
  • O server se recusa a usair a pairtição de troca