Python中设置Redis连接超时时间
2018-11-14 本文已影响0人
Alfred愿意
在Python中连接Redis
常规操作
import redis
rs = redis.Redis(host='127.0.0.1', port=6379)
rs.setname('test', 'xxx')
print(rs.get('test'))
使用连接池
pool = redis.ConnectionPool(host='127.0.0.1', port=6379, db=0)
rs = redis.Redis(connection_pool=pool)
rs.setname('test', 'yyyy')
print(rs.get('test'))
当配置出现问题,或者redis服务挂了的时候,那么对redis的操作就会一直没有响应,那么可以通过设置redis的连接池的连接超时时间参数socket_connect_timeout
,再通过ping()方法来检查Redis的连接有效性。
# 这里把连接时间设置为1秒
pool = redis.ConnectionPool(host='127.0.0.1', port=6379, db=0, socket_connect_timeout=1)
rs = redis.Redis(connection_pool=pool)
try:
re.ping()
except TimeoutError:
pring('redis connection timeout')