У меня есть утечка памяти, которую трудно воспроизвести в тестовой среде. Поэтому я хотел бы профилировать свой производственный сервер в течение ограниченного периода времени, чтобы получить обзор о том, какие объекты занимают большую часть памяти. Кажется, что нелегко профилировать Gunicorn из-за использования зеленых.
Я запускаю:
- Python 2.7.3
- Гуникорн 18.0
- Django 1.6
Это моя конфигурация Gunicorn:
CONFIG = {
'environment': {
'DJANGO_SETTINGS_MODULE': 'myapp.settings',
},
'user': 'myapp',
'group': 'myapp',
'args': (
'--bind=127.0.0.1:8088',
'--workers=8',
'--worker-class=socketio.sgunicorn.GeventSocketIOWorker',
'--timeout=300',
'--error-logfile=/var/log/gunicorn/myapp-error.log',
'--max-requests=100',
'--log-level=debug',
'myapp.wsgi:application',
),
}
Каков наилучший способ сделать профилирование памяти при запуске Django с помощью Gunicorn?