recv-q и send-q между порождением + memcached раздуваются через несколько часов - PullRequest
1 голос
/ 31 января 2010

Я использую python-memcached 1.45 с python 2.5.2, django 1.0.4, порождает 0.9.2, eventlet 0.9.3 и libevent 1.3 на 64-битном Debian Lenny.

сервер порождения запускается с параметрами, указанными ниже:

/usr/bin/python /usr/bin/spawn --factory=spawning.django_factory.config_factory myproject.settings \
--port=8006 --processes=1 --threads=0 --stdout=/dev/null \
--stderr=/var/log/errlog --daemonize --release --host=127.0.0.1

некоторые представления django содержат методы memcache.get и memcache.set_multi.

Через несколько часов после запуска сервера recv-q в memcached становится раздутым. и порождающий сервер начинает возвращать 500 для URL-адреса, привязанные к методам, содержащим коды взаимодействия memcached.

$ sudo netstat -napt|grep 11211
tcp        0      0 127.0.0.1:11211         0.0.0.0:*               LISTEN      22350/memcached 
tcp     2101 112896 127.0.0.1:11211         127.0.0.1:58498         ESTABLISHED 22350/memcached 
tcp   537662      0 127.0.0.1:58498         127.0.0.1:11211         ESTABLISHED 17704/python    
tcp        0      0 127.0.0.1:59766         127.0.0.1:11211         TIME_WAIT   -       

перезагружая порождающий сервер, все приходит в норму, а через несколько часов эта проблема вновь решается.

У меня такая же настройка с lighttpd + fastcgi, и эта проблема не возникает. в чем может быть проблема здесь?

...