Redis: 3 か月以上経過したキーをすべて削除する方法 質問する

Redis: 3 か月以上経過したキーをすべて削除する方法 質問する

3 か月以上経過したキーをすべて削除します。これらのキーには有効期限が設定されていません。

または、それが不可能な場合は、最も古い 1000 個のキーを削除できますか?

ベストアンサー1

オブジェクトidletimeを使用すると、3か月間使用されていないすべてのキーを削除できます。これは、まさにあなたが求めているものではありません。6か月前にキーを作成したが、そのキーが毎日アクセスされている場合、idletimeは更新され、このスクリプトはそれを削除しません。スクリプトが役立つことを願っています。

#!/usr/bin/env python
import redis
r = redis.StrictRedis(host='localhost', port=6379, db=0)
for key in r.scan_iter("*"):
    idle = r.object("idletime", key)
    # idle time is in seconds. This is 90days
    if idle > 7776000:
        r.delete(key)

おすすめ記事