1. 程式人生 > 實用技巧 >Django cache快取

Django cache快取

Django cache快取

django快取預設採用內嵌的memcache資料庫 - 每次重啟專案,快取就會重置。

而 redis資料庫,可以替代memcache資料庫作為Django的快取資料庫

# 1)匯入快取功能
from django.core.cache import cache

# 2)設定,如果將exp過期時間設定0或負值,就是刪除快取
cache.set(key, value, exp)

# 3)獲取
cache.get(key)

介面快取

快取原理:優先找快取資料,有就走快取,沒有的話就走資料庫更新快取

"""
1)什麼是介面的後臺快取
    前臺訪問後臺介面,後臺會優先從快取(記憶體)中查詢介面資料
        如果有資料,直接對前臺響應快取資料
        如果沒有資料,與(mysql)資料庫互動,得到資料,對前臺響應,同時將資料進行快取,以備下次使用
    
    瞭解:前臺快取 - 前臺在請求到介面資料後,在前臺建立快取,再發送同樣請求時,發現前臺快取有資料,就不再對後臺做請求了
    
2)什麼的介面會進行介面快取
    i)介面會被大量訪問(比如主頁中的介面,幾乎所有人都會訪問,而且會重複訪問)
    ii)在一定時間內資料比較固定的介面
    iii)介面資料的時效性不是特別強(資料庫資料發生變化了,不是立即同步給前臺,驗後時間同步給前臺也沒事)
    注:理論上所有介面都可以建立快取,只要資料庫與快取資料同步及時
"""