注:本文主要參考自《Redis設計與實現》
1、數據庫結構
每一個redis服務器內部的數據結構都是一個redisDb[],該數組的大小可以在redis.conf中配置("database 16",默認為16),而我們所有的緩存操作(set/hset/get等)都是在redisDb[]中的一個redisDb(庫)上進行操作,這個redisDb默認是redisDb[0]。
注意:
"定期刪除"見 第九章 Redis過期策略
2、讀寫原理
在每一個redisDb中都以一個dict(字典)用於存儲"key-value"。
例子:
假設在redis中執行了如下四條命令並且沒有執行任何的select,即默認選擇在redisDb[0]上操作
set msg "hello nana"
rpush mylist "a" "b" "c"
hset book name "lover"
hset book author "nana"
則存儲結構如下:
3、讀寫時所進行的維護工作
在讀取一個key(讀寫操作都需要讀取key)後,