redis经常进行连接就会报错
redis.exceptions.ConnectionError: Error 99 connecting to 127.0.0.1:6379. Cannot assign requested address.
资料上说,redis经常进行连接,但是不关闭,端口不够用了。
所以就去找了,pipeline进行连接,以为这样就能解决频繁的连接问题
def throw_on_redis(data):
r = redis.Redis(config['host'], config['port'], config['db'])
p = r.pipeline()
return p.lpush(config['queue'],data)
def data_by_redis():
r = redis.Redis(config['host'],config['port'],config['db'])
p = r.pipeline()
return p.blpop('urls').execute()
while True:
print data_by_redis()
但是依然不行。
想知道应该怎么处理这种情况,我用redis不可避免的出现频现往里面读(主要是读取)和写这种情况。
//建立了一个连接,但是没有释放。服务器仍然hang住了该tcp连接。
题外话,上面的代码描述来看,其实是不需要每次请求都新建链接的。把redis.Redis(config['host'], config['port'], config['db'])作为全局变量来处理即可。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。