O que o pdflush tenta fazer quando um servidor CentOS fica sem memória e não tem uma partição swap?

2

Eu notei que uma das nossas máquinas CentOS estava muito próxima do uso de 100% de memória na noite passada. A carga média na máquina disparou para ~ 16 e notei que havia vários processos de pdflush que estavam bloqueados no disco IO (estado de execução D no topo). Eu pensei que o pdflush era usado para trocar dados da memória para o disco (paginação de memória do sistema operacional), mas esse servidor em particular não tinha uma partição de troca montada. Então, o que o pdflush estava fazendo nesse caso?

    
por Eric Ryan 16.03.2011 / 17:59

1 resposta

3
O principal dever de

pdflush é liberar o cache do buffer de disco (AFAIk, este é seu único dever, mas um guru do Linux pode me corrigir nisso). O cache que ele libera inclui arquivos que foram gravados, mas ainda não consolidados no disco.
Se bem me lembro, kswapd é o processo virtual responsável por lidar com o espaço de troca & embaralhar páginas de memória da RAM para o disco & de volta novamente.

Para a saúde do seu sistema, por favor, configure uma partição swap para o seu servidor (ou swapon do que você tem)

Sistemas semelhantes ao Unix esperam poder trocar. Coisas ruins podem acontecer quando não há swap disponível (como o cache do buffer de disco sendo espremido para um pouquinho de memória, o que pode realmente fazer com que pdflush tenha um dia ruim). Mesmo que você nunca "use" o espaço de troca, o disco é barato o suficiente para que você possa jogar 2G nele.

    
por 16.03.2011 / 18:11