我明白Django的高速緩存功能到期指定的時間間隔已經過去之後(例如,1分,1小時等),但是我有一些內容每天的基礎上發生變化(例如,「每日消息」)。理想情況下,這將被緩存24小時,但如果我將超時設置爲24小時,則不能保證緩存將在午夜精確過期。處理這種情況的最佳做法是什麼?如何在特定的時間(例如午夜)清除Django模板緩存?
1
A
回答
1
兩種簡單的方式映入腦海,既涉及計劃的任務,需要在(比方說)午夜運行。
1)獲得領先的遊戲:安排一些代碼運行(例如對於要求您在午夜內容「每日消息」,用24小時到期的自定義管理命令)。 (假設相關的緩存鍵並沒有被設定)
2)去核:在午夜
調度緩存中清除,或者兩者結合:
不要去核,只是安排調用只在午夜刪除MOTD密鑰(例如cache.delete('motd_key'),然後緩存新的密鑰)
或者,如果您使用Redis作爲緩存後端,則可以緩存MOTD,然後一個EXPIREAT調用設置緩存的MOTD進入在23:59:59到期。redis.py會讓你做一個Python化的方式。
如果您使用的Memcached作爲後端,你沒有得到控制的那個級別。
(如果你使用locmem://,你就錯了; O))
+0
這些是一些不錯的選擇(例如計劃任務或Redis)。我以前沒有聽說過Redis,並會檢查出來。謝謝! – Brad
相關問題
- 1. 在Django中清除特定的緩存
- 2. 如何清除django模塊緩存?
- 3. 如何計算午夜時間間隔?
- 4. 如何檢測時間已過午夜?
- 5. 在午夜時間緩存數據庫查詢?
- 6. 如何清除或清除特定的pod緩存
- 7. 如何獲得給定時區的「午夜」的UTC時間?
- 8. 如何清除NDB中特定模型的緩存
- 9. 從特定時間戳獲取午夜時間戳值
- 10. Django緩存 - 清除緩存
- 11. 使緩存對象在午夜
- 12. Django:如何在緩存鍵使用GET參數時刪除模板緩存?
- 13. 如果$時間=午夜,改變$日
- 14. 午夜時間問題
- 15. django模型從午夜過濾日期時間
- 16. 如何在Django中刪除緩存的模板片段?
- 17. 如何在標籤模板中清除Movable Type緩存
- 18. 自特定日子午夜開始的持續時間
- 19. 後在午夜時間的PostgreSQL
- 20. 如何在午夜前或午夜後學習mytime?
- 21. 如何在特定時間每天刪除緩存項目
- 22. 如何從UTC時間計算當地午夜時間
- 23. 如何在幾秒鐘內獲得午夜以來的時間
- 24. 如何確定在某個時間間隔內午夜的次數
- 25. 如何從django模板重置緩存?
- 26. SQL中的時差。午夜總時間
- 27. 部署後清除模板緩存
- 28. 如何用PHP獲得午夜時間的小時數
- 29. 在mysql中從午夜減去時間
- 30. HTML輸入時間最多在午夜
我不認爲這是一個好主意,_BROWSER cache_動態頁面。你應該只緩存你的靜態文件,而不是整個頁面。 – xyres