Memcached possivelmente vazando memória

2

Estou tendo um problema muito estranho e estou perdido, já que não sei mais o que fazer.

Estamos executando em produção 4 caixas memcached dedicadas. Todas as caixas têm 48Gb de RAM, estão executando memcached e nada mais, e o limite de memória do daemon está definido para 42Gb.

O problema é que não importa a quantidade de tráfego e os / as conjuntos que as caixas recebem, o cache irá preencher todos os 4 deles para cerca de 38Gb, mas então a quantidade de RAM livre disponível para o sistema operacional começará a cair lentamente. o curso de vários dias até as caixas começarem a trocar, preenchendo a troca e a surra! Agora isso é realmente estranho, já que não há mais nada rodando nas caixas que poderiam preencher o resto da memória RAM e memcached está comendo 38GB e não crescendo (pelo menos é isso que os gráficos e as estatísticas mostram).

Eu tentei definir o swappiness como 0, mas isso não ajudou. Eu tentei diminuir ainda mais o limite de cache, mas obtenho o mesmo comportamento.

Estou executando o Centos 5.6, 2.6.18-238, o memcached 1.4.4 e o libevent-1.4.13-1.

Algum de vocês já se deparou com um problema semelhante? O memcached poderia estar vazando memória e não aparecendo nos gráficos ou nas ferramentas usuais do Linux?

Obrigado! Dan

    
por danakim 21.07.2011 / 10:22

2 respostas

0

Memcached poderia vazar memória (essas coisas acontecem), mas apareceria na contabilidade da memória. Sem um bug do kernel bastante improvável, a contabilização da memória será precisa. O longo e curto é que você está perdendo algo em suas atividades de diagnóstico. Colete mais dados e continue olhando para ele.

    
por 21.07.2011 / 12:41
0

Primeiras coisas primeiro: é realmente necessário que você tenha um limite de memória tão alto para o memcached? Menos de 42 GB seria suficiente na prática?

    
por 21.07.2011 / 12:21