欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 维修 > 【Redis】Redis从入门到实战:全面指南

【Redis】Redis从入门到实战:全面指南

2025/6/20 20:49:38 来源:https://blog.csdn.net/weixin_45981509/article/details/148529249  浏览:    关键词:【Redis】Redis从入门到实战:全面指南

Redis从入门到实战:全面指南

一、Redis简介

Redis(Remote Dictionary Server)是一个开源的、基于内存的键值存储系统,它可以用作数据库、缓存和消息代理。由Salvatore Sanfilippo于2009年开发,因其高性能、丰富的数据结构和广泛的语言支持而广受欢迎。

Redis核心特点:

  • 内存存储:数据主要存储在内存中,提供极高的读写性能
  • 持久化支持:支持RDB快照和AOF日志两种持久化方式
  • 丰富的数据结构:字符串、哈希、列表、集合、有序集合等
  • 原子操作:所有操作都是原子性的
  • 发布/订阅:支持消息的发布订阅模式
  • 高可用:通过Redis Sentinel和Redis Cluster支持高可用和分布式

二、Redis安装与配置

1. 安装Redis

Linux系统安装:

wget http://download.redis.io/releases/redis-6.2.6.tar.gz
tar xzf redis-6.2.6.tar.gz
cd redis-6.2.6
make

Docker方式运行:

docker run --name some-redis -d redis

2. 基本配置

Redis的主要配置文件是redis.conf,常见配置项:

# 绑定IP地址
bind 127.0.0.1# 端口号
port 6379# 守护进程模式
daemonize yes# 持久化配置
save 900 1      # 900秒内有1次修改则保存
save 300 10     # 300秒内有10次修改则保存
save 60 10000   # 60秒内有10000次修改则保存# 设置密码
requirepass yourpassword

三、Redis基础数据结构与命令

1. 字符串(String)

SET key value          # 设置键值
GET key               # 获取值
INCR key              # 值自增1
DECR key              # 值自减1
EXISTS key            # 检查键是否存在
EXPIRE key seconds    # 设置过期时间
TTL key               # 查看剩余生存时间

2. 哈希(Hash)

HSET key field value   # 设置哈希字段值
HGET key field         # 获取哈希字段值
HGETALL key            # 获取所有字段和值
HDEL key field         # 删除哈希字段
HKEYS key              # 获取所有字段名

3. 列表(List)

LPUSH key value        # 从左侧插入元素
RPUSH key value        # 从右侧插入元素
LPOP key               # 从左侧弹出元素
RPOP key               # 从右侧弹出元素
LRANGE key start stop  # 获取列表片段
LLEN key               # 获取列表长度

4. 集合(Set)

SADD key member        # 添加元素
SREM key member        # 移除元素
SMEMBERS key           # 获取所有成员
SISMEMBER key member   # 检查成员是否存在
SCARD key              # 获取集合大小

5. 有序集合(Sorted Set)

ZADD key score member  # 添加带分数的成员
ZRANGE key start stop  # 按分数升序获取成员
ZREVRANGE key start stop # 按分数降序获取成员
ZSCORE key member      # 获取成员分数
ZRANK key member       # 获取成员排名(升序)

四、Redis持久化

1. RDB(Redis Database)

RDB是Redis的默认持久化方式,通过创建数据集的快照来工作。

优点:

  • 性能好,适合大规模数据恢复
  • 生成的RDB文件紧凑,适合备份

缺点:

  • 可能会丢失最后一次快照后的数据
  • 大数据集时保存过程可能较慢

2. AOF(Append Only File)

AOF记录每个写操作命令,并在Redis重启时重新执行这些命令来恢复数据。

优点:

  • 数据安全性更高,可配置不同同步频率
  • AOF文件易于理解和解析

缺点:

  • 文件通常比RDB大
  • 恢复速度比RDB慢

配置示例:

appendonly yes
appendfsync everysec  # 每秒同步一次

五、Redis高级特性

1. 事务

Redis事务通过MULTI、EXEC、DISCARD和WATCH命令实现。

MULTI
SET key1 value1
SET key2 value2
EXEC

2. 发布/订阅

# 订阅频道
SUBSCRIBE news# 发布消息
PUBLISH news "hello world"

3. Lua脚本

Redis支持通过Lua脚本执行复杂操作:

-- 示例:限流脚本

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词