redis--データベース

679 ワード

データベース・オブジェクトの定義は次のとおりです.
struct redisServer {
    // ...
    int dbnum; //      
    redisDb *db; //     redis   db
    // ...
}

redisDbは次のように定義されています.
typedef struct redisDb {
    // ...
    dict *dict; //       ,       
    // ...
}

期限切れキーの削除


不活性削除redis期限切れキー不活性削除ポリシーはdb.c/expireIfNeededに定義され、キーの読み書き操作を行う前にこのメソッドを呼び出してチェックする必要があります.終了したらキーをクリアします.定期削除redis期限切れキー定期削除ポリシー定義はredis.c/activeExpireCycleであり、redisがredis.c/serverCronを周期的に実行するたびに実行される.指定された時間内に、各データベースをバッチで巡回し、expiresから一部のキーをランダムにチェックして期限切れのチェックを行います.RDB rdbファイルの生成とロード時に期限切れのキーがフィルタされます