我有一個很大的Django項目,有幾個相互關聯的項目和大量使用中的緩存。它目前有一個存儲緩存幫助函數的文件。因此,例如,get_object_x(id)將檢查此對象的緩存,如果它不存在,請轉到數據庫並從此處將其取出並返回,並沿途緩存。緩存對象組時也遵循相同的模式,並且該文件也用於失效方法。用於處理memcache的模式在Django中緩存
儘管在應用程序之間導入時出現問題。應用模型文件有許多我們想要使用緩存的幫助函數,而cache_helpers文件顯然需要導入模型文件。
所以我的問題是:什麼是這樣做的更好的方式,不暴露代碼循環導入問題(或者可能只是一個更聰明的方式)?理想情況下,我們可以以更好,更少手動的方式做失效。我的猜測是,Django自定義管理器和信號的使用是最好的開始,徹底擺脫cache_helpers文件,但沒有人有更好的建議或方向在哪裏看?
謝謝,我一定會使用get_cached方法。 – Jeff