pyamf, 0.6.1, утечки памяти
После увеличения использования памяти сервером, использующим PyAMF, после нескольких часов копания я заметил, что причиной является библиотека pyamf версии 0.6.1, установленная easy_install. Эта ошибка произошла в 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
или установите пакет pyamf с помощью pip pip install pyamf
, потому что эта команда установить cpyamf
а также и __init.py__
содержит условный импорт т.е.
try:
from cpyamf import amf3
except ImportError:
from pyamf import amf3
Не могли бы вы дать мне объяснение, что происходит?