Redis 字符串(String)详解

1. 什么是字符串类型

在 Redis 中,字符串(String) 是最基本的数据类型。它可以包含任何数据,比如文本、JSON、甚至二进制数据(如图片的 Base64 编码),最大长度为 512 MB

字符串在 Redis 中不仅可用作简单的 key-value 存储,还可用于计数器、自增ID、缓存临时数据等多种应用场景。


2. 字符串的使用方式

最常见的用法是直接设置和获取:

|-----|---------------------------------------------------|
| 1 2 | SET user:1001:name "Alice" GET user:1001:name |

还可以将字符串作为数值使用:

|-----|---------------------------------------------------------------------|
| 1 2 | INCR views:article:123 ; 自增文章浏览次数 DECR stock:product:456 ; 自减库存 |


3. 字符串常用命令

命令 描述
SET key value 设置字符串值
GET key 获取字符串值
APPEND key value 向字符串末尾追加
INCR key / DECR key 整数递增/递减
INCRBYFLOAT key value 浮点数递增
GETRANGE key start end 获取子字符串
SETEX key seconds value 设置带过期时间的值
STRLEN key 获取字符串长度

4. 字符串的高级用法

  • 作为缓存使用
    配合过期时间(SETEXEXPIRE)实现自动失效机制。
  • 对象缓存
    将对象序列化为 JSON 存入字符串,再解析回来。
  • 分布式锁
    使用 SET resource_name unique_id NX PX 30000 实现互斥访问。

5. 使用注意事项

  • 键和值的大小控制:避免存储超大 JSON 对象,可将字段分拆为多个键。
  • 数值操作前类型检查 :确保值确实是数字,防止 INCR 报错。
  • 非文本数据需处理编码:如存图片、音频等需先编码再写入。

6. 参考资料

相关推荐
LaughingZhu16 分钟前
PH热榜 | 2025-04-09
前端·数据库·人工智能·mysql·开源
Cloud_.18 分钟前
Redis
数据库·redis·缓存
严文文-Chris40 分钟前
MySQL逻辑架构有什么?
数据库·mysql·架构
一只栖枝1 小时前
Oracle OCP知识点详解2:yum 等服务的搭建
数据库·oracle·开闭原则·yum·ocp·服务搭建
诡异森林。2 小时前
Docker--利用dockerfile搭建mysql主从集群和redis集群
redis·mysql·docker
wapicn992 小时前
查看手机在线状态,保障设备安全运行
java·网络·数据库·python·php
程序员三藏3 小时前
Selenium三大等待
自动化测试·软件测试·数据库·python·selenium·测试工具·测试用例
闪电麦坤953 小时前
SQL:Constraint(约束)
数据库·sql
观无3 小时前
.NET-EFCore基础知识
数据库·.net
^_^ 纵歌3 小时前
mongodb和clickhouse比较
数据库·clickhouse·mongodb