首页 > 数据库 >Redis-数据结构与对象-字符串

Redis-数据结构与对象-字符串

时间:2023-01-09 13:33:27浏览次数:55  
标签:string SDS Redis len free 字符串 数据结构 1M

string

string是redis最基本的类型,一个key对应一个value。

采用SDS表示字符串,而非C中的简单字符串,SDS本质是结构体,含有free、len、buf三个字段。


SDS长度增长时空间预分配,增长后长度小于1M时,分配的free和len相等,即增长后的buf大小为增长后的len*2+1B;

增长后长度大于等于1M时,分配1M的free,即增长后的buf大小为增长后的len+1M+1B.

当缩短字符串长度时会惰性释放空间,将空闲内存记录在free字段以备后续增长使用。


由于使用了len字段保存字符串长度,SDS不以\0判断是否结尾,因此string类型是二进制安全的。

除普通的字符串外,string也可以存放图片等数据。

redis中字符串value最大是512M。


set [key] [value]新建或更新

get [key]

del [key1] [key2]

mest [key1] [value1] [key2] [value2]一次添加多个键值对

mget [key1] [key2]一次查询多个键值对

标签:string,SDS,Redis,len,free,字符串,数据结构,1M
From: https://www.cnblogs.com/gcr277/p/17036568.html

相关文章