Tenho cerca de 12 processos httpd em execução para uma caixa aws do RHEL que ninguém está acessando no navegador (caixa dev compartilhada da equipe). Esses processos juntos estão consumindo mais de 1,8 GB na caixa dev, e eu vi até 6 GB em produção. Cada um desses processos consome cerca de 800 MB como por ps aux. Eu fiz um strace em um deles e deixei por um tempo para encontrar:
<venv>/django/contrib/flatpages/templatetags/analytical 0x7fff37ef41a0) = -1 ENOENT (No such file or directory)
<venv>/django/contrib/flatpages/templatetags/analytical.py, O_RDONLY) = -1 ENOENT (No such file or directory)
<venv>/pagination/templatetags/expert_tags.py, O_RDONLY) = -1 ENOENT (No such file or directory)
<venv>/django/templatetags/raven.py, O_RDONLY) = -1 ENOENT (No such file or directory)
<vevn>/django_extensions/templatetags/raven.py O_RDONLY) = -1 ENOENT (No such file or directory)
Existem; com uma piada, milhares dessas mensagens ENOENT duram apenas 5 minutos. Todos os tipos de arquivos diferentes.
Uma sequência de 3 outros processos mostra algo também interessante
read(4, 0x7fff37efa00f, 1) = -1 EAGAIN (Resource temporarily unavailable)
Qualquer forma de descobrir qual Recurso está sendo mencionado aqui?
Não sou especialista em programação de sistemas operacionais, mas presumo que isso não seja normal? Alguma idéia de como eu posso descobrir o que está causando isso? Como evitar isso?
Estranhamente, este raven.py é realmente um arquivo perdido, mas nós temos uma biblioteca de terceiros no ambiente virtual chamada
raven (3.5.1)