Redis 缓存

安装

安装 Redis

下载: Releases · tporadowski/redis (github.com)

win+r ----services.msc-----将redis 设置为手动(只是学习,如果经常用可以设置为自动)

安装 redis-py 库

pip install redis-py

Redis 和 StrictRedis

redis-py 提供 Redis 和 StrictRedis 两个类, 用来实现 Redis 命令对应的操作

StrictRedis 类实现了绝大部分官方的 Redis 命令, 参数也 一 一对应,例如 set 方法就对应 Redis 命令的 set 方法。 而 Redis 类是 StrictRedis 类的子类, 其主要功能是向后兼容旧版本库里的几个方法。为了实现兼容, Redis 类对方法做了改写, 例如 将 lrem 方法中 value 和 num 参数的位置互换,这和 Redis 命令行的参数是不一致的

官方推荐的是适应 StrictRedis 类

连接 Redis

from redis import StrictRedis

redis = StrictRedis(host='localhost', port=6379, db=0)

redis.set('name', 'Bob')

print(redis.get('name'))

复制代码
b'Bob'

这里不用输入密码,说是没有设置密码。

我们在这里传入了 Redis 的地址, 端口, 使用的数据库。在默认不传参数的情况下, 地址为 localhost 端口为 6379 , 数据库为 0 (总共16个数据库, 0-15) 密码为 None

然后声明了一个 StrictRedis 对象, 并调用对象的 set() 方法, 设置了一个键值对,最后调用 get() 方法获取了设置的键值, 并打印出来

也可以使用 ConnectionPool 来连接

from redis import StrictRedis, ConnectionPool

pool = ConnectionPool(host='localhost', port=6379, db=0)

redis = StrictRedis(connection_pool=pool)

这样连接的效果也是一样的。观察源码可以发现, StrictRedis 内其实就是用 host 和 port 等参数又构造了一个 ConnectionPool, 所以直接将 ConnectionPool 当作参数传给了 StrictRedis 也一样

另外 ConnectionPool 还支持通过 URL 来构建连接, 支持以下三种

redis://:password@host:port/db

redis://:password@port/db

unix://:password@path/to/socket.sock?db=db

这三种 URL 分别表示创建 Redis TCP 连接, Redis TCP+SSL 连接, Redis UNIX socket 连接我们只需要构建其中任意一种即可,其中 password 部分有就写上,没有可以省略

这里用 URL 连接试一下

url = 'redis://@localhost:6379/0'

pool = ConnectionPool.from_url(url)

redis = StrictRedis(connection_pool=pool)

这里我们使用的是第一种格式,首先声明一个 Redis 连接字符串,然后调用 from_url 方法创建ConnectionPool, 接着捡起传给 StrictRedis 即可完成连接。所以使用 URL 方式连接还是比较方便的

后面就是 redis 的一些操作指令,用的时候再查,这里就不一 一列举了

相关推荐
会编程的土豆7 小时前
功能详解 01 · 用户注册:从表单到数据库一行
开发语言·数据库·后端·mysql·golang
夏贰四7 小时前
数据资产平台如何落地企业数据分级合规管控?数据资产平台怎样满足行业数据监管审查要求?
大数据·数据库·人工智能
吴声子夜歌7 小时前
MongoDB 4.2——聚合框架
数据库·mongodb
墨神谕7 小时前
认识一下Unicode(统一码)
android·java·数据库
xywww1687 小时前
Claude Opus 5 API 接入实战:国内项目上线前的网络、Key、限流和排错清单
大数据·linux·网络·数据库·云计算·aws
yuezhilangniao8 小时前
某专科医院老数据库迁移实战记录-Oracle10g sqlserver2008等
数据库
白猫不黑8 小时前
SQL注入实战:手工注入全流程详解
网络·数据库·sql·web安全·网络安全·信息安全
咩咩啃树皮17 小时前
第43篇:Vue3计算属性(computed)完全精讲——缓存机制、依赖计算、业务最优解
前端·vue.js·缓存
kirs_ur17 小时前
ECC & LDPC — SSD 的数据卫士
服务器·数据库·性能优化
是三一seven18 小时前
Sql注入基础
数据库·安全·网络安全