【Redis】String 类型命令、编码方式与应用场景

Redis 的 String 类型

常用命令


String 编码方式

  1. int

    8字节的整数

  2. embstr

    压缩字符串,适用于比较短的字符串。有时会根据业务场景需要,将长的字符串也压缩为embstr格式的

  3. raw

    普通字符串,适用于更长的字符串,只是单纯的持有字节数组

可以通过 object encoding key命令查看编码方式

应用场景

  1. 作为缓存功能,提供中间件角色的服务

  2. 实现快速计数功能,同时数据可以异步处理落地到其他数据源,用于统计

    之所以用到异步是因为像MySQL这样的数据源它写入速度没有Redis那么快,而且数据源没有立刻写入的必要性,可以慢慢写

  3. 共享会话(Session)

    一般情况来说,负载均衡,用户请求可能会被负载均衡分配到不同的服务器中处理,如果没有Redis,用户与服务器之间的session就会被独立存储,这就很有可能用户登录页面后,刷新页面登录信息没了,要重新登录,想要维持每次用户都要维持在同一个服务器上,正确读到session,除了可以通过技术手段,让某一个用户只给特定服务器处理当前session,还有一个办法就是共享session。

    将Session共同存进Redis中,用户无论访问到哪个服务器上,服务器都要从Redis中取出Session,用户之前的各种信息就不会丢了

  4. 验证码的临时存储

    邮箱 / 手机 / 验证码登录功能:设置过期时间和校验功能。

相关推荐
Decay__8 小时前
12_MySQL InnoDB 内存与锁调优 —— Buffer Pool、redo log、隔离级别与锁等待
运维·数据库·sql·mysql·架构
笃行3508 小时前
AI数据库的库内四层结构,KingbaseES 产品拆解
数据库
我是大猴子10 小时前
redis
数据库·redis·缓存
苏宸啊12 小时前
MySQL(一)
数据库·mysql
2603_9696948513 小时前
JDBC 基础学习笔记:API 核心原理解析与 CRUD 代码实操
数据库·笔记·mysql·学习方法·database·sql注入
这个DBA有点耶13 小时前
库内语义构建 vs 外挂向量库:业务语义缺失,才是RAG“胡说八道”的根源
数据库·mysql·aigc
kobe_OKOK_14 小时前
mysql 开启 binlog 日志
数据库·mysql
鸽芷咕15 小时前
KingbaseES 调参先看执行计划,参数是答案不是起点
数据库
码哥字节15 小时前
Redis 分布式锁的 7 个坑:从 setnx 到 Redlock
redis·分布式锁