当前位置 : 首页 > 文章 > 学习Redis的重要性及环境搭建

学习Redis的重要性及环境搭建

来源:推好下载站Gamer发布时间: 2024-11-30 10:14:42

为什么学习Redis?前几天遇到了一个需求,需要使用Redis库。虽然在大学时学习过,但只是略有涉猎,现在几乎忘得一干二净。在测试需求时,只能临时学习几个查询指令。其中印象最深的是,在开发设计时存储了10个不同的key值,但它们的value(列表字符串)相同。当时询问为何要存储十个相同value的key,得到的解释是:“为了防止频繁访问一个key导致的热key问题,所以存储10个相同value的key,随机访问,分散压力”。后来查询资料才发现,频繁访问一个key会导致CPU资源过载、内存资源紧张以及负载不均衡等问题。

一. 环境搭建

我直接在网上下载了win redis-x64.zip压缩包,解压到本地后可以看到两个文件,一个是redis-server.exe(Redis服务启动程序),另一个是redis-cli.exe(Redis客户端操作程序)。压缩包地址:
https://pan.baidu.com/s/1t_NpWnE_qj4TvyESyvXYDA?pwd=4c0a
提取码:4c0a

二. 基本使用

1. 启动服务

2. 打开Redis客户端连接

输入ping返回PONG即连接成功

IP默认本地IP,端口默认6379

3. 切换库

4. 设置key和value值

5. 停止服务

6. 其他常用操作

dbsize:查看当前库key值数量

flushdb:删除当前库所有数据

exit:退出客户端连接

keys *:查看当前库所有key值(还可模糊匹配:*通配符,?占位符,例:*明*,*ming,li*)

exists key:判断key是否存在(例:exists name 存在返回1,不存在返回0)

expire key seconds:设置key过期时间(例如:expire name 30,设置name存活30s,30秒后key会失效删除)

ttl key:查询key剩余存活时间(-1 表示未设置存活时间,永久生效,-2已失效,存活时间已过,正数表示剩余存活时间)

type key:查询value数据类型

del key:删除key

append key value:在当前value末尾追加内容

strlen key:返回value长度

三. 存储类型

1. 字符串(string)

字符串是Redis中最基本的数据类型,可以存储任何形式的字符串,包括数字、文本等。

存储时使用:set key value(通过set存储的value都是string类型)

2. 哈希(Hash)

哈希类型是一个键值对的集合,适用于存储对象类型的数据。每个哈希表可以包含多个字段和值,非常适合表示具有多个属性的数据对象。

1)HSET key field value:设置哈希表字段的值。

2)HGET key field:获取哈希表字段的值。

3)HDEL key field:删除哈希表的某个字段

3. 列表(list)

列表是一个双向链表,支持在列表的两端进行高效的插入和删除操作。

1)声明一个key,value值为list的

2)添加多个value

3)根据下标查询value list值

4)向list右侧添加value值

5)向右侧添加单个元素值

6)向左添加单个元素值

7)通过下标获取对应的元素值

8)删除最左侧的值

9)删除最右侧的值

10)删除

11)查询list长度

12)插入元素

4. 集合(set)

集合是一种无序、不重复的数据类型。Redis提供了高效的集合操作,如求交集、并集、差集等。

1)创建一个set类型的value值

2)查看全部的value值

3)判断value值是否存在

4)判断元素个数

5)删除元素

5. 有序集合(zset)

有序集合与普通集合类似,但每个元素都有一个关联的分数(score),Redis会根据分数对元素进行自动排序。

1)ZADD key score member:向有序集合中添加元素并指定分数

2)ZRANGE key start stop:获取指定范围内的有序集合成员

3)ZREM key member:删除有序集合中的某个元素

四. Python操作

1. 安装Redis库

2. 实例操作

操作方法和dos差不多,r为Redis实例化对象,直接用r.的方式调用方法操作即可。

3. Python实现随机访问key来避免频繁的访问一个key导致的热key问题