Redis 對象

Redis中每個對象都由一個redisObject結構表示:

typeof struct redisObject {

//類型

unsigned type : 4;

//編碼

unsigned encoding : 4;

//指向底層數據結構的指針

void *ptr;

// . . .

} robj;


type  對象的類型

REDIS_STRING 字符串對象

REDIS_LIST 列表對象

REDIS_HASH 哈希對象

REDIS_SET 集合對象

REDIS_ZSET 有序集合對象


對於Redis保存的鍵值對來說,鍵總是一個字符串對象,而值可以是上述對象中的任意對象。使用TYPE命令返回的結果是數據庫對應鍵的值對象類型。


encoding 記錄對象底層數據結構的實現。使用OBJECT ENCODING 可查看一個數據庫鍵的值對象編碼。


Redis對象的內存回收採用的是類似JVM垃圾回收的方法之一  引用計數法。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章