SDS
作为Redis最基本的数据类型,SDS又进行了更细致的分类。主要区别在于字符串长度字段,对于长度较短的字符串其长度保存在flags字段中的高5位,flags的低3位保存字符串的类型。所有的flags字段在SDS结构中都使用一个无符号字节类型保存在具体的String前,SDS使用了buf[-1]的方式获取flags字段。
SDS 全称是Simple Dynamic String 动态扩展内存。特点如下:
- 内部为当前字符串实际分配的空间,一般要高于实际字符串的长度,当字符串的长度小于1M时,扩容都是扩一倍,如果超过1M,扩容是最多扩1M的空间,字符串的最大长度是512M
- 二进制安全(Binary Safe)。sds能存储任意二...