1、操作模式
redis-py提供两个类Redis和StrictRedis用于实现Redis的命令,StrictRedis用于实现大部分官方的命令,并使用官方的语法和命令,Redis是StrictRedis的子类,用于向后兼容旧版本的redis-py
import redis
r = redis.Redis(host='10.211.55.4', port=6379)
r.set('foo', 'Bar')
print r.get('foo')
2、连接池
redis-py使用connection pool来管理对一个redis server的所有连接,避免每次建立、释放连接的开销。默认,每个Redis实例都会维护一个自己的连接池,可以直接建立一个连接池,然后作为参数Redis,这样就可以实现多个Redis实例共享一个连接池
import redis
#拿到一个redis的连接池
Pool = redis.ConnectionPool(host='127.0.0.1',port=6379,max_connections=10)
#从池子中拿一个链接
conn = redis.Redis(connection_pool=Pool,decode_responses=True)
print(conn.get('name').decode('utf-8'))
3、管道
redis-py默认在执行每次请求都会创建(连接池申请连接)和断开(归还连接池)一次连接操作,如果想要在一次请求中指定多个命令,则可以使用pipline实现一次请求指定多个命令,并且默认情况下一次pipline是原子性操作:
import redis
pool = redis.ConnectionPool(host=192.168,port=6379)
r = redis.Redis(connection_pool=pool)
#pipe = r.pipeline(transaction=False)
pipe = r.pipeline(transaction=True)
pipe.set('name','ale')
pipe.set('role','ab')
pipe.execute()
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:redis的连接方式 - Python技术站