私はZopeユーティリティとネットワークプロセスを実行するメソッドを持っています。 theの結果はしばらくの間有効ですが、私はplone.memoize.ram
を使用して結果をキャッシュしています。plone.memoize.ramを使ってメモを無効にする/防止する
MyClass(object):
@cache(cache_key)
def do_auth(self, adapter, data):
# performing expensive network process here
...とキャッシュ機能:
def cache_key(method, utility, data):
return time() // 60 * 60))
しかし、私はdo_auth
呼び出しが空の結果を返すときに行わ(またはネットワークエラーを発生させる)ためにメモ化を防ぎたいです。
plone.memoizeコードを見ると、私はraise ram.DontCache()
例外が必要なようですが、これを行う前に古いキャッシュされた値を調べる方法が必要です。
どのようにキャッシュされたデータをキャッシュストレージから取得できますか?