相关疑难解决方法(0)

Python:内存泄漏调试

我有一个在django中运行的小型多线程脚本,随着时间的推移,它开始使用越来越多的内存.离开它一整天吃大约6GB的RAM,我开始交换.

http://www.lshift.net/blog/2008/11/14/tracing-python-memory-leaks之后,我将其视为最常见的类型(仅使用了800M的内存):

(Pdb)  objgraph.show_most_common_types(limit=20)
dict                       43065
tuple                      28274
function                   7335
list                       6157
NavigableString            3479
instance                   2454
cell                       1256
weakref                    974
wrapper_descriptor         836
builtin_function_or_method 766
type                       742
getset_descriptor          562
module                     423
method_descriptor          373
classobj                   256
instancemethod             255
member_descriptor          218
property                   185
Comment                    183
__proxy__                  155
Run Code Online (Sandbox Code Playgroud)

没有表现出任何奇怪的东西.我现在该怎么做才能帮助调试内存问题?

更新:尝试一些人们推荐的东西.我一夜之间运行程序,当我工作时,使用了50%*8G == 4G的RAM.

(Pdb) from pympler import muppy
(Pdb) muppy.print_summary()
                                     types |   # objects |   total size
========================================== | =========== | ============
                                   unicode |      210997 |     97.64 MB
                                      list |        1547 | …
Run Code Online (Sandbox Code Playgroud)

python django debugging memory-leaks

24
推荐指数
4
解决办法
2万
查看次数

标签 统计

debugging ×1

django ×1

memory-leaks ×1

python ×1