0
我使用django-cache和django-redis-cache作爲後端。Django緩存在獲得參數時存儲不同的密鑰
有:
@cache_page(60*60*24)
裝飾的看法。
現在我面臨的問題是每一個get請求被存儲在Redis的一個不同的密鑰。 我必須爲任何獲取參數顯示相同的頁面。有什麼辦法可以強制緩存在服務和製作密鑰時忽略get參數。
我使用django-cache和django-redis-cache作爲後端。Django緩存在獲得參數時存儲不同的密鑰
有:
@cache_page(60*60*24)
裝飾的看法。
現在我面臨的問題是每一個get請求被存儲在Redis的一個不同的密鑰。 我必須爲任何獲取參數顯示相同的頁面。有什麼辦法可以強制緩存在服務和製作密鑰時忽略get參數。
當然,無論請求的查詢字符串如何計算相同的緩存鍵都是「一種方式」,但它需要一點工作 - 您必須根據低級高速緩存API重寫自己的cache_page
實現這裏記錄爲https://docs.djangoproject.com/en/1.6/topics/cache/#the-low-level-cache-api)。您也可以閱讀CacheMiddleware
的源代碼(其中cache_page
構建於此)。
現在,我不得不說,我不明白髮生了頁面緩存緩存鍵時忽略查詢字符串的地步。
我實際上正在使用類似基於GET參數的祕密登錄名,並使用它來從cron類型的python腳本中預熱緩存。 (頁面加載大約需要25分鐘)。 – crazydiv