Python中设置Redis连接超时时间

在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')

你可能感兴趣的:(Python中设置Redis连接超时时间)