ViVo的这个型号(图1),选保护膜应该怎么选呀为什么选这个版本(图2)的大了这么多呢

为什么会选择44作为两种编码的分堺点在3.2版本之前为什么是39?这两个值是怎么得出来的呢

第一步就完成了,RedisObject对象头信息会占用16字节的大小这个大小通常是固定不变的.

2) sds占用字节大小计算

内存分配器jemalloc分配的内存如果超出了64个字节就认为是一个大字符串,就会用到raw编码

前面提到 SDS 结构体中的 content 的字符串是以字節\0结尾的字符串,之所以多出这样一个字节是为了便于直接使用 glibc 的字符串处理函数,以及为了便于字符串的调试打印输出所以我们还偠减去1字节

所以,redis 3.2版本之后embstr最大能容纳的字符串长度是44之前是39。长度变化的原因是SDS中内存的优化

我要回帖

 

随机推荐