python - 我的 Django 项目是否消耗了异常数量的 RAM?

标签 python django linux ram webfaction

这是专门托管在 webfaction 上的,django 项目只有一个静态应用程序,仅此而已。它还运行 celeryd 和 memcached,但这些进程有预期的内存消耗。

问题的一些线索

将调试设置为 true 或 false 对内存消耗的影响为零。

当我运行 apache2/bin/stop 时,apache2/bin/start 消耗显着下降,直到我重新加载站点,然后它又回到这个数量。

这是命令 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

实例的数量是预期的和正常的,它只是第 2 个和第 3 个的内存消耗令人烦恼。

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',
)

感谢帮助

最佳答案

我建议您使用 Dozer看看你的内存消耗。将以下内容添加到您的 wsgi.py:

from dozer import Dozer
application = Dozer(application)

然后加载“http://example.org/_dozer/index”。

关于python - 我的 Django 项目是否消耗了异常数量的 RAM?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12720839/

相关文章:

c++ - C/C++远程消息队列的推荐

linux - Kubernetes 将主机路径挂载到容器内的特定位置

linux - 从 bash 切换到 csh 提示符

python - 修改列表中的数据框不起作用

python - tensorflow 代码TypeError : unsupported operand type(s) for *: 'int' and 'Flag'

python - Djangosyncdb 对 unicode 字符串的行为异常

python - 允许在 Python/Django 中重复多对多条目的方法

python - 将 Factory Boy 与 GeoDjango PointFields 一起使用

python - Sqlalchemy complex NOT IN another table query

python - 扁平化和解包列表