String类型是比较基本的类型
String做了改进->动态字符串
KVPair均是SDS对象
列表内部的字符串也是SDS对象
此外SDS还被用作buffer,AOF中的AOF缓冲区,客户端状态中的输入缓冲区.
SDS结构:
- len,字符串的长度
- free,闲置空间长度
- buf[],字符串本身.
优点
- O(1)复杂度获取长度
- 因为记录长度避免了拼接String缓冲区溢出
- 减少字符串修改带来的内存重分配次数->空间预分配&&惰性空间释放
- 二进制安全
- 兼容部分C字符串的函数
本文介绍了Redis中SDS(Simple Dynamic String)结构的特点与应用。SDS改进了传统C字符串的不足,通过记录长度实现了字符串长度的快速获取,并通过空间预分配和惰性空间释放减少了内存重分配的次数。SDS不仅用于实现Redis的键值对,还在缓冲区管理等方面发挥了重要作用。
String类型是比较基本的类型
String做了改进->动态字符串
KVPair均是SDS对象
列表内部的字符串也是SDS对象
此外SDS还被用作buffer,AOF中的AOF缓冲区,客户端状态中的输入缓冲区.
SDS结构:
优点
1222

被折叠的 条评论
为什么被折叠?