Redisはキーの有効期限をどのように実装していますか? hereから、私はRedisがキーが期限切れになる時刻を記憶していることを知りましたが、これはどのように実装されていますか?redisはどのようにキーを期限切れにしますか?
9
A
答えて
24
要するに、各赤目オブジェクトに対して、有効期限があります。期限切れにするオブジェクトを設定しない限り、その時間は「決して」ありません。
ここで、期限切れメカニズム自体は半怠惰です。遅れ期限切れとは、実際にオブジェクトが読み込まれるまで期限切れになっていないことを意味します。この場合、オブジェクトを読み込む際に、有効期限のタイムスタンプをチェックし、過去にあった場合は何も返さず、オブジェクトを削除します。しかし、問題は、キーに触れることは決してない場合、それは単に理由がないためにメモリを占有するということです。
したがって、Redisは、ランダムな有効期限の第2のレイヤーを追加します。それは常にランダムなキーを読み取るだけであり、期限切れのキーに触れると、遅延メカニズムに基づいて削除されます。これは期限切れの動作には影響しません。期限切れのキーの「ガベージコレクション」を追加するだけです。
実際の実装はこれよりも複雑ですが、これが主な考えです。 http://redis.io/commands/expire
を、アクティブな有効期限のサイクルのためのソースコードはここで見つけることができます:
あなたはここでそれについての詳細を読むことができますhttps://github.com/antirez/redis/blob/unstable/src/server.c#L781
関連する問題
- 1. Redis maxmemory-policyはHashSetの内部でキーを期限切れにしますか?
- 2. Redisでハッシュ内のキーを期限切れにする方法
- 3. Sinonを使ってRedisがキーを期限切れにする
- 4. redisのような特定のキーのデータを期限切れにすることは可能ですか
- 5. REDISキーから期限切れを取り除く方法
- 6. Redisでは、キーの有効期限を取得するにはどうすればよいですか?
- 7. 有効期限切れのときにredisキーをアトミックに移動
- 8. 期限切れのFacebookアクセストークンはどのように更新しますか?
- 9. REDISでキーが期限切れになるとコールバックを取得する方法
- 10. phpセッションの期限切れ時にmemcached期限切れキーを設定することはできますか?
- 11. Redisの期限切れと増分
- 12. 期限切れのcodeigniterセッションはどのようにクリーンアップされますか?
- 13. Redis Cleanは期限切れのキーを保存またはbgsaveで保存しますか?
- 14. Android - 署名キーが期限切れになるとどうなりますか?
- 15. Redis LRUとキーが個別に期限切れになるのはなぜですか?
- 16. 春データredis - 期限切れイベントを聞きます
- 17. Apache Kafkaコンシューマ・グループのオフセットはどのように期限切れですか?
- 18. モデルまたはResqueワーカーでフラグメントキャッシュをどのように期限切れにしますか?
- 19. Express.jsでクッキーが期限切れになるようにするにはどうすればよいですか?
- 20. redisキーが期限切れになったときに通知を受け取る方法は?
- 21. redisサーバは、luaスクリプトのコマンドの間に期限切れの鍵を削除しますか?
- 22. Redis有効期限が切れていません
- 23. トークンの期限切れを確認してユーザーをログアウトするにはどうすればよいですか?
- 24. Djangoはsession.flush()でデータベースセッションエントリを期限切れにしますか?
- 25. Railsはモデルからフラグメントキャッシュを期限切れにします
- 26. 30分後にPL SQLセッションを期限切れにするにはどうすればよいですか?
- 27. キャッシュコントロールの期限切れヘッダーを画像に追加するにはどうすればよいですか?
- 28. 期限切れのFacebookアクセストークンをテスト用に生成するにはどうすればよいですか?
- 29. Redisの複合データ型の期限切れ
- 30. Redis masterを別のスタンドアロンRedisインスタンスに同期させるにはどうすればよいですか?
タイトルと質問が一致していません。何を聞いていますか? redisはどのようにキーを期限切れにするのですか?リスト内のアイテムを期限切れにすることができるかどうかを確認します。 –
@Not_a_Golferタイトルを変更しました。混乱して申し訳ありません。 –