Python 通过Django视图查看memcache统计信息会导致超时

Python 通过Django视图查看memcache统计信息会导致超时,python,timeout,memcached,Python,Timeout,Memcached,我在Django视图中有以下代码片段来呈现memcache统计数据: import datetime, re, memcache host = memcache._Host(settings.CACHES['default']['LOCATION']) host.connect() host.send_cmd("stats") output = '' while 1: line = host.readline() if line[0] == "END": brea

我在Django视图中有以下代码片段来呈现memcache统计数据:

import datetime, re, memcache
host = memcache._Host(settings.CACHES['default']['LOCATION'])
host.connect()
host.send_cmd("stats")
output = ''
while 1:
    line = host.readline()
    if line[0] == "END":
        break
    output += line + "\n"
host.close_socket()
return output
当我尝试此操作时,readline()语句会超时

不过,通过
manage.py shell
尝试此代码效果很好

如果改为使用此代码段,它将在视图中工作:

p2 = subprocess.Popen(["echo \"stats\" | nc " + settings.CACHES['default']['LOCATION'].replace(':', ' ')], stdout = subprocess.PIPE, shell=True)
return p2.stdout.read()

我可以忽略前面代码的超时,使用subprocess方法,但我真正感兴趣的是了解可能出现的错误。有人遇到过这个问题吗?

没关系,应该是:

if line.strip() == "END":
结束日期:

if line[0] == "END":