我有一个长期运行的Python进程,它对Oracle数据库使用Django-ORM。在
工艺规模不断扩大。在
我使用mem_top分析这个过程,发现一个特定数据类型的引用计数随着迭代次数的增加而不断增加。在
数据类型为[{u'time':u'0.004',u'sql':u'QUERY=u'选择“RANGE\u STATUS”。“I
参考文献从534增加到53295
这个列表似乎包含了使用ORM执行的几乎所有查询
这是否意味着cxu Oracle模块或Django ORM中的某个地方存在内存泄漏?在
这是相隔10分钟的两次迭代之间的memtop结果。在
警告:2014年12月27日下午5:45:46:
refs:
9500 <type 'dict'> {'TAPE_DRIVE_FORMAT': -1610612736, 'SLE_ERROR': 1, 'IMAGE_REL_I386_SEC
8410 <type 'list'> [('200', '343045', 1321), ('200', '343046', 1322), ('200', '343047', 1
1578 <type 'dict'> {'logging.atexit': None, 'django.core.files.errno': None, 'django.test
1567 <type 'list'> ['mem_top', 'mem_top', 'datetime', 'datetime', 'sys', 'string', 'os',
688 <type 'dict'> {'FILE_SYSTEM_ATTR': 2, 'GetDriveTypeW': <built-in function GetDriveTy
688 <type 'dict'> {'FILE_SYSTEM_ATTR': 2, 'GetDiskFreeSpaceEx': <built-in function GetDi
534 <type 'list'> [{u'time': u'0.004', u'sql': u'QUERY = u\'SELECT "RANGE_STATUS"."I
510 <type 'dict'> {'GetDiskFreeSpaceEx': <built-in function GetDiskFreeSpaceEx>, 'SetThr
510 <type 'dict'> {'GetDiskFreeSpaceEx': <built-in function GetDiskFreeSpaceEx>, 'SetThr
370 <type 'list'> [<weakref at 01CF5030; to 'type' at 1E228030 (type)>, <weakref at 01CF
types:
8625 <type 'function'>
3778 <type 'tuple'>
3128 <type 'dict'>
1672 <type 'list'>
1661 <type 'cell'>
1440 <type 'weakref'>
1351 <type 'wrapper_descriptor'>
1103 <type 'builtin_function_or_method'>
888 <type 'type'>
734 <type 'getset_descriptor'>
警告:2014年12月27日下午5:54:37:
^{pr2}$请引导。在
结果在我的Django设置中,Debug=True。把它变成False解决了这个问题。使用Debug=True django在内部构建了一个列表,我看到它有过多的引用计数。在
相关问题 更多 >
编程相关推荐