Redis有五种数据结构分别为string,list,hash,set,zset
字符串string是redis最简单的数据结构,内部表示就是一个字符数组,redis所有的数据结构都以唯一的key字符串作为名称,然后通过这个唯一的key值来获取相应的value值,不同的数据结构的差异就在于value值的结构不一样
字符串的使用非常广泛,一个常见的用途就是缓存用户信息,我们将用户信息结构体使用json序列化成字符串,然后将序列化后的字符串塞进redis来缓存,同样,获取用户信息会经过一次饭序列化过程
redis字符串是动态字符串,可以修改,可以扩容,内部结构实现,类似于java的ArrayList,采用预分配内存空间的方式来减少内存的频繁分配,分配的实际容量一般要高于实际存储的字符串长度len,当字符串长度小于1mb时,扩容都是加倍现有空间,如果字符串长度超过1mb,扩容一次只会多扩1mb.最大长度512MB
1.相关典型操作
set key value 设置值
get key 获取对应key的value
del key 删除key
meet k1 v1 k2 v2. 批量存储数据
get k1 k2。获取多个key数据
expire key time(second) 设置过期时间
setex key time value 设置key并且过期时间为time
setnx key value 如果不存在,存储key