kioku-space

備忘録も兼ねて、私が面白い/役立つと思った情報を書いています。

Pythonで有効期限(TTL)付きキャッシュを実装する (2)

今回も引き続き、有効期限(TTL)付きキャッシュの実装について解説します。
初めに前回の内容を簡単に振り返りましょう。

  1. lru_cache を使用すると関数にキャッシュ機能を持たせることができました。
  2. 指定間隔で返り値が更新される get_ttl_hash 関数を実装しました。
  3. 以下の方法で関数に有効期限付きキャッシュ機能をもたせることができました。
    1. lru_cache でキャッシュ機能を追加
    2. ダミー引数を追加
    3. ダミー引数に get_ttl_hash の返り値を入力

「この処理を自動で行ってくれるデコレータを実装しよう」というのが今回の目標です。