在服务器使用 PyAMF 增加内存使用量之后,经过几个小时的挖掘,我注意到原因是 easy_install 安装的 0.6.1 版本的 pyamf 库。此错误发生在 Ubuntu 12.04 上:64 位和 32 位版本。以下是该valgrind massif
工具的报告。
--------------------------------------------------------------------------------
Command: python build_web/web2py.py -a root --minthreads=1 --maxthreads=1 --nogui
Massif arguments: --depth=50
ms_print arguments: massif.out.492
--------------------------------------------------------------------------------
MB
31.69^ #
| @@::@#
| @@ :@:::::@ : @#
| ::: :@ :::::@: :: @ : @#
| : ::::::: ::@ : : :@: :: @ : @#
| ::::::: ::: ::@ : : :@: :: @ : @#
| ::: ::: ::: ::@ : : :@: :: @ : @#
| ::::@::@::::::: ::: ::: ::@ : : :@: :: @ : @#
| ::::::: : @: @::: ::: ::: ::: ::@ : : :@: :: @ : @#
| :@@::: :: : : @: @::: ::: ::: ::: ::@ : : :@: :: @ : @#
| ::::::::::::@ ::: :: : : @: @::: ::: ::: ::: ::@ : : :@: :: @ : @#
| :: ::: ::: :@ ::: :: : : @: @::: ::: ::: ::: ::@ : : :@: :: @ : @#
| ::::::: ::: ::: :@ ::: :: : : @: @::: ::: ::: ::: ::@ : : :@: :: @ : @#
| :: : :: ::: ::: :@ ::: :: : : @: @::: ::: ::: ::: ::@ : : :@: :: @ : @#
| :: : :: ::: ::: :@ ::: :: : : @: @::: ::: ::: ::: ::@ : : :@: :: @ : @#
| :: : :: ::: ::: :@ ::: :: : : @: @::: ::: ::: ::: ::@ : : :@: :: @ : @#
| :: : :: ::: ::: :@ ::: :: : : @: @::: ::: ::: ::: ::@ : : :@: :: @ : @#
| :: : :: ::: ::: :@ ::: :: : : @: @::: ::: ::: ::: ::@ : : :@: :: @ : @#
| :: : :: ::: ::: :@ ::: :: : : @: @::: ::: ::: ::: ::@ : : :@: :: @ : @#
| :: : :: ::: ::: :@ ::: :: : : @: @::: ::: ::: ::: ::@ : : :@: :: @ : @#
0+----------------------------------------------------------------------->Ti
0 2.678
在我的情况下,解决方案是cpyamf
使用 pip 使用或安装 pyamf 包pip install pyamf
,因为这个命令也安装cpyamf
并且__init.py__
包含条件导入,即
try:
from cpyamf import amf3
except ImportError:
from pyamf import amf3
你能给我解释发生了什么吗?