redis分析-SDS
2015-08-05 22:09
549 查看
redis仅仅在表示字符串常量时候使用C字符串
字符串的表示:
struct sdshdr {
// 记录buf数组中已使用字节的数量
// 等于SDS所保存字符串的长度
unsigned int len;
// 记录buf数组中未使用字节的数量
unsigned int free;
// 字节数组,用于保存字符串
char buf[];
};
优点:1,保留长度,不用每次读取长度的时候都需要遍历。
2.避免缓冲区溢出。
3.减少字符串修改时内存重新分配的次数。
空间预分配情况下,redis的分配策略带来了一倍的内存占用
惰性空间释放的情况下,缩短字符串后,又重新增长字符串,是否继续遵循空间预分配策略
字符串的表示:
struct sdshdr {
// 记录buf数组中已使用字节的数量
// 等于SDS所保存字符串的长度
unsigned int len;
// 记录buf数组中未使用字节的数量
unsigned int free;
// 字节数组,用于保存字符串
char buf[];
};
优点:1,保留长度,不用每次读取长度的时候都需要遍历。
2.避免缓冲区溢出。
3.减少字符串修改时内存重新分配的次数。
空间预分配情况下,redis的分配策略带来了一倍的内存占用
惰性空间释放的情况下,缩短字符串后,又重新增长字符串,是否继续遵循空间预分配策略
相关文章推荐
- 使用Python操作Redis
- ubuntu 中安装 nodejs+mongodb+redis
- Redis笔记(一)Redis简介
- redis实战:使用redis实现自动补全
- 超强、超详细Redis数据库入门教程
- 解决Redis到数据库同步BUG方案
- 转- redis 各种数据类型的使用场景
- Instagram的Redis实践(节约内存)
- linux 搭建 redis
- PHP-redis中文文档
- 非关系型数据库Redis学习(3)
- Redis 集群解决方案 Codis 2.0 发布
- Redis 集群解决方案 Codis 2.0 发布
- Redis-Jedis工作笔记-jedis 按数据库分片
- perl-redis
- redis配置文件redis.conf参数说明
- Redis的介绍和常用数据类型结构命令的总结
- Redis在Windows下安装和PHP中使用
- Redis3.0.3集群安装
- Redis常用命令——string