Redis教程

字符串(string)

Preview
  • Redis字符串(string)
  • 基本操作
  • SET
  • GET
  • MSET
  • MGET
  • 进阶操作
  • INCR
  • DECR
  • INCRBY
  • DECRBY
  • APPEND
  • STRLEN
  • 应用场景
  • 缓存
  • 计数器
  • 分布式锁

Redis字符串(string)

Redis 中的 String 是最基本的数据结构之一,它是二进制安全的,意味着 String 类型的值可以包含任何数据,包括图片、序列化对象等等。

基本操作

SET

设置一个键值对:

SET key value [EX seconds] [PX milliseconds] [NX|XX]

参数解释:

  • key:键名。
  • value:键值。
  • EX seconds:设置过期时间,单位为秒。
  • PX milliseconds:设置过期时间,单位为毫秒。
  • NX:仅在键不存在时才设置值。
  • XX:仅在键已存在时才设置值。

示例:

SET name "Redis"

GET

获取一个键的值:

GET key

参数解释:

  • key:键名。

示例:

GET name

MSET

设置多个键值对:

MSET key1 value1 [key2 value2 ...]

参数解释:

  • key1:键名。
  • value1:键值。

示例:

MSET name "Redis" age 10

MGET

获取多个键的值:

MGET key1 [key2 ...]

参数解释:

  • key1:键名。

示例:

MGET name age

进阶操作

INCR

将键对应的值加一:

INCR key

参数解释:

  • key:键名。

示例:

SET count 1
INCR count

DECR

将键对应的值减一:

DECR key

参数解释:

  • key:键名。

示例:

SET count 1
DECR count

INCRBY

将键对应的值加上指定的整数:

INCRBY key increment

参数解释:

  • key:键名。
  • increment:要增加的整数值。

示例:

SET count 1
INCRBY count 2

DECRBY

将键对应的值减去指定的整数:

DECRBY key decrement

参数解释:

  • key:键名。
  • decrement:要减少的整数值。

示例:

SET count 3
DECRBY count 2

APPEND

将指定字符串追加到键对应的值的末尾:

APPEND key value

参数解释:

  • key:键名。
  • value:要追加的字符串。

示例:

SET greeting "Hello"
APPEND greeting " Redis"

STRLEN

获取键对应的值的长度:

STRLEN key

参数解释:

  • key:键名。

示例:

SET greeting "Hello Redis"
STRLEN greeting

应用场景

缓存

String 类型的值可以用于缓存访问量较大的数据,如网站首页、文章列表等。设置一个过期时间可以避免缓存数据过期不更新的问题。

计数器

可以使用 INCR 和 DECR 等命令实现计数器功能,如网站的访问量统计。

分布式锁

可以使用 SET 命令设置一个键值对,键名代表锁的名字,键值代表锁的持有者。使用 NX 参数可以保证只有一个客户端能够成功获取锁。使用 EX 参数可以设置锁的过期时间,防止死锁的发生。