11
我有一個很難在測試環境中重現的內存泄漏。 因此,我想在有限的時間內對我的生產服務器進行概要分析,以瞭解哪些對象佔用大部分內存。 由於使用了greenlet,所以對於Gunicorn的配置似乎並不那麼容易。如何在生產中對Gunicorn上的Django進行配置文件
我運行:
- 的Python 2.7.3
- Gunicorn 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?
你可以嘗試編寫自己的自定義分析中間件。看看這個:https://gun.io/blog/fast-as-fuck-django-part-1-using-a-profiler/。雖然,作者在那裏建議自己不要在劇本中使用劇本。 這是一個聲稱做你想做什麼的回購:https://github.com/theospears/django-speedbar – 2015-06-24 10:08:31