/*** redis 3.0
*/adlist.c //
雙向鍊錶結構,用於定義list
ae.c
//用於事件的處理
ae_epoll.c //
處理epoll事件
ae_evport.c //
通過event ports實現處理介面
ae_kqueue.c //
實現訊息佇列的處理
ae_select.c //
處理select事件
anet.c
//網路處理
aof.c //
實現aof模式
bio.c
//在後台通過執行緒模式實現io處理
bitops.c //
與setbit,getbit相關的位操作
blocked.c //
支援類似blpop,wait的阻塞操作
cluster.c
//與集群建立,通訊相關的實現
config.c //
配置檔案的解析
crc16.c
//基於ccitt標準的過濾演算法
crc64.c
db.c
//c-level資料庫api實現
debug.c //
除錯庫與日誌輸出
dict.c //
字典實現
endianconv.c
//主機位元組序編譯碼, redis致力於使用little endian來編碼
intset.c
//int集合型別實現
lzf_c.c
//lzf壓縮演算法
lzf_d.c
memtest.c
//記憶體測試
multi.c
//批量命令操作的原子實現
networking.c
//網路通訊實現
noti.c
//通過pub/sub實現的keyspace事件通知
object.c //
物件的儲存型別
pqsort.c
//一種快速排序實現
pubsub.c
//發布/訂閱模式
rand.c
//隨機序列的生成
rdb.c
//rdb資料的load與dump
redis.c
//redis資料庫的主程式入口
redis-benchmark.c //
redis基準測試入口
redis-check-aof.c //
aof檔案檢查入口
redis-check-dump.c //
dump檔案檢查入口
redis-cli.c //
redis的shell客戶端
release.c
//版本發布資訊
replication.c
//資料的主從備份
rio.c
//流式i/o的讀寫介面
scripting.c
//redis相關協議轉換到lua環境下執行
sds.c
//強大的字串處理機制
sentinel.c //
redis(集群)的監護程式
setproctitle.c
//程式名資訊相關?
sha1.c
//sha1加密演算法
slowlog.c
//記錄最近一段時間的查詢等操作
sort.c
//排序演算法及輔助函式
syncio.c
//同步io的實現
t_hash.c
//hash結構
t_list.c //
list結構
t_set.c //
set結構
t_string.c //
string結構
t_zset.c //
用兩種資料結構儲存同乙個資料體
util.c
//輔助函式
ziplist.c
//ziplist結構
zipmap.c //
zipmap結構
zmalloc.c
//在malloc上進行封裝,增加記憶體開銷統計
redis 原始碼結構及各檔案功能概要
redis 3.0 adlist.c 雙向鍊錶結構,用於定義list ae.c 用於事件的處理 ae epoll.c 處理epoll事件 ae evport.c 通過event ports實現處理介面 ae kqueue.c 實現訊息佇列的處理 ae select.c 處理select事件 anet...
Redis原始碼解析 字典結構
一般情況下,我們談到字典,難免要談到紅黑樹。但是redis這套字典庫並沒有使用該方案去實現,而是使用的是鍊錶,且整個 行數在1000行以內。所以這塊邏輯還是非常好分析的。我們可以想象下,如果使用普通的鍊錶去實現字典,那麼是不是整個資料都在一條鍊錶結構上呢?如果是這麼設計,插入和刪除操作是非常方便的,...
Redis原始碼分析(一) Redis結構解析
從今天起,本人將會展開對redis原始碼的學習,redis的 規模比較小,非常適合學習,是乙份非常不錯的學習資料,數了一下大概100個檔案左右的樣子,用的是c語言寫的。希望最終能把他啃完吧,c語言好久不用,快忘光了。分析原始碼的第一步,先別急著想著從哪開始看起,先瀏覽一下原始碼結構,可以模組式的漸入...