level[](前進指標 + 跨度)、backward(後退指標)、score、obj。contents[],依 encoding 為 int16/int32/int64。previous_entry_length、encoding、content。| 類型 | 編碼選項 | 轉換條件 |
|---|---|---|
| 字串 | int / embstr / raw | 整數→int;≤32B 字串→embstr(唯讀);其餘→raw |
| 列表 | ziplist / linkedlist | 所有元素 <64B 且 <512 個→ziplist |
| 雜湊 | ziplist / hashtable | 鍵值長度 <64B 且 <512 對→ziplist |
| 集合 | intset / hashtable | 全整數且 <512 個→intset |
| 有序集合 | ziplist / skiplist | 元素 <128 且 member <64B→ziplist |
執行型別特定命令前,檢查 redisObject.type;再依 encoding 選擇具體實作。
lru 欄位記錄最後存取時間,配合 maxmemory 政策淘汰閒置鍵。