2013-02-26 2 views
1

나는 관리자 3.0a8-1.1로 Ubuntu 12.04에서 Django 1.4 사이트를 실행 중이며 gunicorn 0.17.2 및 gevent 0.13.8과 함께 이상한 문제가 발생했습니다.관리자 Django Gunicorn Gevent 메모리 사용량

감독자의 메모리 사용량은 서버가 응답하지 않을 때까지 계속 증가합니다.

command=/app/virtualenv/bin/newrelic-admin run-program /app/virtualenv/bin/python /app/manage.py run_gunicorn -c gunicorn_conf.py -k gevent 
directory=/app 
autostart=true 
autorestart=true 
stopsignal=KILL 
killasgroup=true 
environment=NEW_RELIC_CONFIG_FILE='/app/newrelic.ini' 

다음과 같은 gunicorn CONFIGS :이 모든 역의 nginx를 통해로 프록시되는

workers = 4 
bind = '0.0.0.0:(Site Port Number)' 

5 개 다음 감독자 CONFIGS있는 사이트가 있습니다.

2 코어와 7.3GB RAM이있는 대형 EC2 인스턴스에서 실행하고 있는데, 이는 필자가 원하는 것보다 더 길어야합니다.

이 문제가 발생한 사람이 있습니까?

+0

이것은 백만 가지 일 수 있습니다. 빈 django 프로젝트를 사용하고 메모리 문제가 지속되는지 확인해 보셨습니까? 우선 문제에서 코드를 제거하고 새로운 유물, 게이 몬 또는 천문학 자 중 하나에서 발생할 수있는 버그에 대해 걱정해야합니다. –

+0

나는 표준 Mezannine과 표준 Djando CMS를 가진 2 개의 사이트를 가지고 있습니다. 이들 중 어느 것도 뉴럴릭을 사용하지 않습니다. 빈 프로젝트가 요청에 따라 안정적으로 모니터 할만큼 충분한 메모리를 사용하지 않는 한, 표준으로 제공됩니다. 나는 감독관없이 이러한 2 개의 프로젝트를 실행하고 메모리를 정리해야합니다. – Crazyconoli

답변

4

슈퍼 바이저없이 프로젝트를 실행할 때 메모리가 올바르게 지워지면 그게 당황한 것입니다.

슈퍼 바이저는 단지 데몬 관리자입니다. 프로세스를 시작하고 관리하는 것은 아무것도하지 않으며,이 경우 프로세스는 manage.py입니다.

유일하게 생각할 수있는 점은 변경 사항을 감지하고 오류가 제거되지 않기 때문에 수퍼바이저가 지속적으로 프로세스를 다시 시작하면 autorestart가 켜져 메모리 누출을 일으키는 것으로 알려져 있습니다. 이것은 actually fixed in supervisor 3.0b1입니다. 상사를 업데이트 할 수 있습니까?

+0

고마워. 나는 그것을 시도 할 것이다. 자동 시작이 켜져 있습니다. – Crazyconoli

+0

업데이트 관리자가 실제로 Guniciorn을 사용하여 메모리 문제를 중지 시켰습니다. 셀로리 작업에서 일부 누수가 발생하여이를 확인하기 위해 추가 테스트를 수행했습니다. – Crazyconoli