数据结构论坛

首页 » 分类 » 分类 » 详解Redis之String的数据结构及
TUhjnbcbe - 2025/1/18 16:33:00

NOSQL数据结构存储系统,有文档型、键值型、列型存储、图形数据库等,其中,键值型Redis在简单的读写性能方面是最快的。

支持“INCRANDGET”原子操作

Redis现在是各个系统几乎都在使用的一种分布式,高可用,由key-value存储的,缓存内存中的,NOSQL数据结构存储系统。redis中有string、sets、sortedsets、hash、list类型,但是string的结构,以上数据结构的基础。

01Redis的String介绍

Redis的string是以一种纯字符串,作为value的形式存在的,也是String,Hash,List,SetZset几种之中使用最多的数据结构,value可以存储简单的字符串、json、xml、二进制,但是其值的最大长度为MB。

string的结构,以上数据结构的基础。

02Redis的String结构常用操作:

1.基本操作

set:

setkeyvalue[ex][px][nx

xx]

ex:秒级过期时间。

px:毫秒级过期时间。

nx:键必须不存在,才可以set成功(添加)。

xx:键必须存在,才可以set成功(更新)。

ps:setnx在多个客户端执行时,也只有一个能成功,所以可以作为分布式锁的一种解决方案。

mset:

msetkey1value1key2value2……(批量设置)

get、mget与del:

getkey

mgetkey1key2……

delkey

String结构常用操作

2.其他操作

计数:

incrkey自增(key对应的值必须要为整数,否则报错。如果键不存在,则自动创建该键,值从0开始自增,返回1。)。

decrkey自减(同incr原则)。

incrbykeyincrement指定步长自增。

decrbykeydecrement指定步长自减。

incrbyfloatkeyincrement指定浮点数步长自增。

追加值:

appendkeyvalue(向字符串尾部追加值)。

字符串长度:

strlenkey(单位:字节。一个中文字占3个字节,一个ascii字符占1个字节。)

设置并返回原值:

getsetkeyvalue

设置制定位置的字符:

setrangekeyoffsetvalue

获取部分字符串:

getrangekeystartend

03Redis的String应用场景:

单值缓存:

商品库存,key=商品id,value=库存数量。

对象缓存:

1)set存储用户信息,key=user:idvalue=json格式数据。

2)mset批量存储用户信息,适用于数据不断变化的应用场景。

如用户

1
查看完整版本: 详解Redis之String的数据结构及