django 三種快取模式的使用及注意點

2022-05-05 15:12:11 字數 1182 閱讀 6548

django 快取模式的使用(主要針對restful設計模式的專案)

有三種模式:

全站使用快取模式(整個專案每個介面都會使用快取,缺點:所以介面都無法實時性獲取資料)

單獨檢視快取模式(單個介面使用快取)

區域性檢視快取模式

第一種:實現方式:

必須在 settings中設定 快取中介軟體

middleware =[

'django.middleware.cache.updatecachemiddleware',

。。。其他中介軟體。。。

'django.middleware.cache.fetchfromcachemiddleware',

]

但是伴隨的缺點就是 沒有設定 快取的介面預設都會有600秒的快取,如下

無論清快取還是換瀏覽器,因為快取都是放在服務端的。

這就導致 那些不需要設定快取,要求資料實時性較高的介面無法及時返回最新資料。

所以:如果需要使用 

from django.views.decorators.cache import cache_page, cache_control

from django.views.decorators.vary import vary_on_headers

@cache_control,@vary_on_headers,@vary_on_cookie 

這些裝飾器,就必須需要 快取中介軟體,但是這樣會導致其他介面都會有快取600秒,需要慎重考慮使用

第二種

from django.views.decorators.cache importcache_page

@cache_page(10)

defcac(request):

.......

這種方式只針對乙個介面使用快取(個人傾向於使用此方式)

第三種

涉及到模板的使用(具體沒有研究過):

django 三種快取模式的使用及注意點

django 快取模式的使用 主要針對restful設計模式的專案 有三種模式 全站使用快取模式 整個專案每個介面都會使用快取,缺點 所以介面都無法實時性獲取資料 單獨檢視快取模式 單個介面使用快取 區域性檢視快取模式 第一種 實現方式 必須在 settings中設定 快取中介軟體 middlewa...

三種快取模式(Cache Pattern)

cup和記憶體資料交換的效率不高,這是指令流水線式處理器的瓶頸之一。我們可以通過儲存層次 memory hierarchy 的方式來解決這個問題。這個儲存層次內有 1 容量小的 高速的快取 2 容量較大的 慢一點記憶體 3 容量很大的 但很慢的硬碟 2 檢查記憶體 main memory 如果a在主...

使用VMWare的三種模式

使用vmware的三種模式 a.bridge,預設使用 vmnet0 作為虛擬網絡卡 可配多網絡卡橋接 特徵 虛擬機器和主機網路環境相同 如果主機網線斷開,則虛擬機器與主機無法使用tcp ip 協議互動 網路配置 虛擬機器ip 與主機ip 同一網段 虛擬機器閘道器,子網掩碼,dns均與主機網絡卡相同...