結構:
實際上鍵值資料是字典結構,這裡使用hashmap表示
鍵空間的操作
字典的基本操作,增删改查
更新命中率
更新lru
删除過期鍵
事務中對鍵的修改設定為髒
expires儲存了鍵的過期時間,可以使用指令來設定該四件
有三種方式:
定時删除, 在設定的時候建立定時任務,到時執行删除
記憶體友好,費cpu
惰性删除,過期不管,下次通路時删除且傳回空
cpu友好,費記憶體
定期删除,使用定期任務,來檢查是否過期。 折中
redis使用了後兩者相配合。
過期鍵不寫入rdb
過期鍵删除點(惰性或者定期)會寫aof
複制, 主節點會同步删除,從屬節點傳回已經過期但是不删除