Redis
# 介绍
在Pyhton中,我们可以使用redis-py库来实现对Redis内存数据库进行操作。
它提供Redis和StrictRedis两个类来实现,一般用StrictRedis即可。
StrictRedis用于实现大部分官方的命令,并使用官方的语法和命令。
Redis是StrictRedis的子类,用于向后兼用旧版本。
# 使用
# 创建Redis连接池
redis-py中连接池用于管理对Redis的所有连接,避免每次建立、释放连接的开销。即便创建Redis连接时没有指定连接池,也会自动创建一个自己的连接池。
我们也可以先建立一个连接池,然后作为连接Redis时的参数,这样就可以实现多个Redis实例共享一个连接池。
# 返回一个ConnectPool对象,需要键值对传参
pool = redis.ConnectionPool(host=host,port=port...)
1
2
2
host:主机地址。
port:端口 (默认6379)。
db:数据库索引 (默认0)。
password:如果有密码则需要输密码。
decode_responses:是否进行解码 (返回结果默认是byte类型)。
# 连接Redis
# 导入redis库
import redis
# 连接Redis数据库,返回Redis对象。
redis = redis.StrictRedis('host',port...)
1
2
3
4
5
2
3
4
5
host:主机地址。
port:端口 (默认6379)。
db:数据库索引 (默认0)。
password:如果有密码则需要输密码。
connection_pool:指定连接池对象,如果指定了连接池,则不用再指定主机、端口、密码等参数,因为连接池已经连上了。
# Redis方法
# 设置str类型键值
set(name,value...)
其它参数:
ex - 过期时间(秒)。
px - 过期时间(毫秒)。
nx - 如果设置为True,则只有name不存在时,当前set操作才执行。
xx - 如果设置为True,则只有name存在时,当前set操作才执行。