这是特定于webfaction的托管,django项目有一个静态的应用程序,但就是这样。它还运行celeryd和memcached,但这些进程预计会占用内存。
可能会出现一些线索
将debug设置为true或false对显示的内存消耗没有任何影响。
当我运行apache2 / bin / stop,然后apache2 / bin / start消耗量大幅下降,直到我重新加载网站,然后它回到这个数量。
以下是来自commpand ps -u username -o rss,command
的值得注意的输出2120 /home/path/apache2/bin/httpd.worker -f /home/path/apache2/conf/httpd.conf
46408 /home/path/apache2/bin/httpd.worker -f /home/path/apache2/conf/httpd.conf
47124 /home/path/apache2/bin/httpd.worker -f /home/path/apache2/conf/httpd.conf
4800 /home/path/apache2/bin/httpd.worker -f /home/path/apache2/conf/httpd.conf
实例的数量是预期的和正常的,它只是第二个和第三个的内存消耗很麻烦。
django项目使用了一堆第三方库和应用程序,所以可能存在内存泄漏?除此之外,它只是一堆查询集调用..所有会消耗大量内存的东西,比如图像重新调整大小都是在模板中完成的,所以它不能是那样。
编辑: 以下是第3部分应用程序:
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'mptt',
'userena',
'guardian',
'django_facebook',
'django.contrib.admin',
'django.contrib.admindocs',
'djcelery',
'kombu.transport.django',
)
感谢您的帮助
答案 0 :(得分:4)
我建议您使用Dozer来查看您的内存消耗情况。将以下内容添加到wsgi.py:
from dozer import Dozer
application = Dozer(application)
然后加载“http://example.org/_dozer/index”。