Redis常用命令详解(15个最常用命令)

Redis是大型架构核心,下面我详解Redis常用命令@mikechen

一、Key操作命令
1、SET:设置键值
最常用的写入命令。

SET user:1 "mikechen"

查询:

GET user:1

返回:

mikechen

应用场景:

  • 用户信息缓存;
  • Session缓存;
  • Token缓存;

2、GET:获取数据
根据 Key 获取 Value。

GET user:1

返回:

"mikechen"

时间复杂度:

O(1)

Redis 查询速度快的核心原因之一就是 GET 操作复杂度极低。

3、DEL:删除Key
删除一个或多个 Key。

DEL user:1

删除多个:

DEL user:1 user:2 user:3

返回:

(integer) 3

表示成功删除3个Key。

4、EXPIRE:设置过期时间
缓存场景必备命令。

EXPIRE user:1 3600

表示:

1小时后自动删除

查看剩余时间:

TTL user:1

返回:

3599

5、KEYS:查看Key
查看所有符合条件的Key。

KEYS user:*

返回:

user:1
user:2
user:3

⚠️ 生产环境慎用:

KEYS会扫描整个Redis

数据量大时可能导致阻塞。

推荐使用:

SCAN

二、Hash操作命令
Hash 非常适合存储对象。

例如:

{
  "id":1,
  "name":"Mike",
  "age":18
}

6、HSET:设置字段

HSET user:1 name Mike age 18

查看:

HGETALL user:1

返回:

name
Mike

age
18

7、HGET:获取字段

HGET user:1 name

返回:

Mike

适用于:

  • 用户信息
  • 商品信息
  • 配置中心

三、List操作命令
List 本质是双向链表。

适用于:

  • 消息队列
  • 任务队列
  • 最新动态

8、LPUSH:左侧插入

LPUSH news "消息1"
LPUSH news "消息2"
LPUSH news "消息3"

结果:

消息3
消息2
消息1

9、LRANGE:获取列表
查看全部数据:

LRANGE news 0 -1

返回:

消息3
消息2
消息1

四、Set操作命令
Set特点:

无序
元素唯一
自动去重

适用于:

  • 用户标签
  • 共同好友
  • 抽奖系统

10、SADD:添加元素

SADD tags java redis mysql

11、SMEMBERS:获取全部元素

SMEMBERS tags

返回:

java
redis
mysql

五、ZSet操作命令
ZSet = Set Score

特点:

自动排序
支持排名
支持TopN

广泛用于:

  • 排行榜
  • 热搜榜
  • 积分系统

12、ZADD:添加元素

ZADD rank 100 Tom
ZADD rank 95 Jack
ZADD rank 88 Mike

13、ZRANGE:获取排行榜

ZRANGE rank 0 -1 WITHSCORES

返回:

Mike 88
Jack 95
Tom 100

倒序:

ZREVRANGE rank 0 9 WITHSCORES

获取Top10。

六、运维监控命令
线上排查问题最常用。

14、INFO:查看运行状态
查看Redis整体信息。

INFO

重点关注:

connected_clients
used_memory
total_commands_processed
keyspace_hits
keyspace_misses

示例:

INFO memory

查看内存使用情况。

15、MONITOR:实时监控命令
实时查看所有执行命令。

MONITOR

输出:

SET user:1 Mike
GET user:1
DEL user:1

适用场景:

  • 问题排查;
  • 性能分析;
  • 命令追踪;

⚠️ 生产环境慎用:

MONITOR开销较大

仅建议短时间排查使用。

Redis命令分类总结

类型 核心命令
Key操作 SET、GET、DEL、EXPIRE、KEYS
Hash操作 HSET、HGET
List操作 LPUSH、LRANGE
Set操作 SADD、SMEMBERS
ZSet操作 ZADD、ZRANGE
运维监控 INFO、MONITOR

 

评论交流
    说说你的看法