django 三種緩存模式的使用及注意點


Django 緩存模式的使用(主要針對RestFul設計模式的項目)

有三種模式:

  1. 全站使用緩存模式(整個項目每個接口都會使用緩存,缺點:所以接口都無法實時性獲取數據)
  2. 單獨視圖緩存模式(單個接口使用緩存)
  3. 局部視圖緩存模式

第一種:實現方式:

        必須在 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 import cache_page
@cache_page(10) def cac(request): .......

這種方式只針對一個接口使用緩存(個人傾向於使用此方式)

 

第三種

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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM