String数据类型的应用场景

1. 简介

  string 类型是 Redis 中最基本的数据类型,最常用的数据类型,甚至被很多玩家当成 redis 唯一的数据类型去使用。string 类型在 redis 中是二进制安全(binary safe)的,这意味着 string 值关心二进制的字符串,不关心具体格式,你可以用它存储 json 格式或 JPEG 图片格式的字符串。   

2. 数据模型

  string 类型是基本的 Key-Value 结构,Key 是某个数据在 Redis 中的唯一标识,Value 是具体的数据。

KeyValue
‘name’‘redis’
‘type’‘string’

3. 应用场景

(1) 存储 MySQL 中某个字段的值

把 key 设计为 表名:主键名:主键值:字段名 eg.

set user:id:1:email 10000@qq.com

(2) 存储对象

string 类型支持任何格式的字符串,应用最多的就是存储 json 或其他对象格式化的字符串。(这种场景下推荐使用 hash 数据类型)

set user:id:1 '[{"id":1,"name":"zj","email":"10000@qq.com"},{"id":1,"name":"zj","email":"10000@qq.com"}]'

(3) 生成自增 id

当 redis 的 string 类型的值为整数形式时,redis 可以把它当做是整数一样进行自增(incr)自减(decr)操作。由于 redis 所有的操作都是原子性的,所以不必担心多客户端连接时可能出现的事务问题。

incr 对值进行加1操作,如果不是整数,返回错误,如果不存在按照从0开始decr 同incr,但是是减1操作incrby,decrby ,增加减去指定的数

应用场景:比如视频播放次数,点赞次数。

(4)共享session

数据共享的功能,redis作为单独的应用软件用来存储一些共享数据供多个实例访问。

单点登录的一个具体实现

(5)自动定时过期删除

set key value [ex seconds] [px millseconds] [nx|xx]

ex seconds: 键过期时间

px milliseconds: 为键设置毫秒级过期时间

nx: 键必须不存在才可以设置成功,用于添加

xx: 键必须存在,才可以设置成功,用于更新

(6)批量操作

mset,mget

批量设置和获取命令,在操作多个key的时候可以节省网络传输时间

mset key value [key value...]
mget key [key ...]

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值