通過學習了一段時間的redis設計與實現,結合自己的學習心得簡單總結一下學習路線
先展示一張redis的乙個key-value儲存到底在底層是什麼樣的,以乙個raw 的 sds為例(其中省略了很多很多引數具體可以深入學習之後就會了解或者訪問這裡)
// redisserver redis的根struct
struct redisserver
// redis預設16個資料庫之中的資料庫結構
typedef
struct redisdb
// 字典
typedef
struct dict dict;
// 雜湊表
typedef
struct dictht dictht;
// 雜湊表節點
typedef
struct dictentry v;
} dictentry;
// redisobject就是 dictentry->union->val
typedef
struct redisobject robj;
// redis的sds redisobject->sdshdr
struct sdshdr
;這樣一看是不是就直接的感受到了redis的儲存結構了
其中最複雜的在這個dictentry->
union
->val
這個結構裡儲存了我們所說的字串、列表、hash、
有序集合和無序集合,還有他們具體的資料結構比方說sds就有三種
1、第一種就是乙個數字,redisobject->ptr就是指向乙個具體的值
2、第二種就是乙個比較小的字串,redisobject->ptr 會直接儲存sds的具體結構,因為計算機的記憶體分配機制
3、第三種比較長的字串,ptr會指向乙個其他位址的sds
其中的geo和其他的一些結構我還沒具體研究,本小白還需要回爐深造
redis續期 Redis學習
過期刪除策略 redis 過期策略及實現原理 mp.weixin.qq.com redis分布式鎖 聊聊redisson的分布式鎖 www.jianshu.com 聊聊分布式鎖 mp.weixin.qq.com redis distlock redis中國使用者組 crug www.redis.cn...
如何安裝Redis
redis是用ansi c語言編寫的 支援網路的 nosql記憶體資料庫,資料呈key value形式,支援五種資料結構,有持久化到硬碟檔案功能,並提供多種語言的api。wget tar xzf redis 4.0.9.tar.gz cd redis 4.0.9 make 編譯完成後在根目錄下有個s...
如何安裝Redis
本人在window10上安裝了vmware,然後在虛擬機器中安裝了ubantu。這裡給出了破解版vmware的連線 ubantu安裝教程 ubuntu 下安裝redis 在 ubuntu 系統安裝 redis 可以使用以下命令 sudo apt get update sudo apt get ins...