1

私はdjango1.4.1プロジェクトでDBとファイルベースのキャッシュを使用しています。キャッシュする必要のある要素が100000を超えていますが、それらは48時間キャッシュされています。しかし、キャッシュ内の要素はあまりにも早く消えており、キャッシュカバレッジは約10%です。

たとえば、メインページは48時間に1回だけ生成する必要がありますが、キャッシュから取得されるのはヒットの30%のみであり、他の70%のリクエストはキャッシュされたバージョンを検出せず、メインページを再生成します。

cache_time = 60*60*24*2
body_html = cache.get('index')
if not body_html:
    body_html = generate_page_html_content()
    cache.set('index', body_html, cache_time)
#do something with body_html

db cacheの場合SELECT count(*) FROM cache;、224個のキャッシュされたアイテムが返されましたが、もっと多くのアイテムがあるはずです。何が間違っている可能性がありますか?

4

1 に答える 1

0

解決策は次のとおりです:https ://docs.djangoproject.com/en/dev/topics/cache/#cache-arguments

オプションを追加MAX_ENTRIESして制限を設定しました。これは私に適しています。

于 2013-04-03T07:25:02.220 に答える