Nas últimas semanas, percebi que o uso de memória do sistema aumenta gradualmente a cada dia e acaba atingindo o máximo.
Historicamente, o uso de memória girava em torno de 50% a 55% (em um sistema de 3 GB). Agora, após uma atualização, ele começa em 50%, mas nos dias seguintes sobe lentamente até 85% e passa a utilizar a memória de swap.
Existe alguma maneira de identificar o que no Discourse está causando esse aumento e consumindo memória? O Gerenciador de Tarefas mostra apenas o Ruby aumentando gradualmente a quantidade de memória que está consumindo. Cada processo Ruby parece estar ocupando 350 MB e crescendo (inicia com menos de 200 MB após uma atualização).
Atualizei para v2.3.0.beta9 +392 há dois dias, e o uso já subiu de 50% para 75%, sem parecer estar se estabilizando.
You could try enabling the sidekiq logs, and then look for which job is causing the problem. Some information on those logs can be found in this commit message
The memory utilization is back up to 73% and doesnt’ seem to slowing down. It’s now beginning to take up swap space.
I’m not sure how to do this, would need some guidance. I had a look at the commit and it talks about setting 2 environment variables. How do I do this? I’m not familiar with ruby/docker and don’t want mess anything up as this is live.
Is there anything else I can look at to see why the memory utilization is creeping up?
I’m also seeing a new error in the logs after the update (2 since yesterday):
Okay so I did a update and rebuild last night. The memory usage is back up to 71% and still growing. The only way to reduce it is to restart discourse at which point it drops back down to under 50% and then starts working it’s way up again. The CPU utilization is about 1% on average.
That’s a good question, which is exactly what I had earlier, how do I find out what’s taking up memory within Discourse? I can only see the task manager which shows that Ruby is taking up more memory with time (all the instances of Ruby are growing in memory consumption).