pode causar um aumento significativo no consumo de RAM

1

Eu tenho um processo node.js rodando continuamente em uma instância linux EC2, ele extrai dados e os armazena no mysql. Algumas leituras também são realizadas no banco de dados.

O processo pode funcionar bem durante horas ou dias e ter um consumo constante de RAM. Mas, de tempos em tempos, ele começa a consumir mais e mais memória RAM, aumentando em até 100%, fazendo com que o servidor pare de responder.

Primeiro pensei em um vazamento de memória, mas não consegui encontrar nada.

Então eu dei uma olhada no I / O (usando a opção "Detailed CPU time" do htop), e vi que há muito Iowait (a barra da CPU permanece preenchida em cinza) ao mesmo tempo em que o uso de RAM o processo node.js está aumentando.

É correto interpretar que existe uma correlação entre o problema de consumo de 100% de RAM e a questão de I / O perf? Ou devo voltar para a minha investigação de vazamento de memória?

atualização: Eu lancei o mesmo código, processando o mesmo volume de dados em um servidor de um provedor de nuvem diferente. Eu não tenho nenhum pico de uso de memória até agora. Estou pensando em mudar para esse provedor e esquecer isso. Ainda curioso para saber qual poderia ser a causa do problema. hardware? alguma configuração?

    
por Mehdi 03.04.2014 / 20:55

1 resposta

1

Is it correct to interpret that there is a correlation between the 100% RAM consumption problem and the I/O perf issue?

Você tem coisas para trás - o cenário mais provável é que a contenção de memória esteja causando o alto IO. Quando a memória RAM desacelera, as páginas começam a ser trocadas para o disco, o que mata o desempenho do E / S.

Or should I go back to my memory leak investigation?

Sim. Uma etapa adicional que você poderia poderia fazer seria mover seu swap para um fuso separado, para que ele não esteja competindo pelo IO com o restante do servidor. Isso deve ser apenas uma solução temporária de band-aid.

    
por 03.04.2014 / 20:58