django的快取
在動態**中,使用者所有的請求,伺服器都會去資料庫中進行相應的增,刪,查,改,渲染模板,執行業務邏輯,最後生成使用者看到的頁面.
當乙個**的使用者訪問量很大的時候,每一次的的後台操作,都會消耗很多的服務端資源,所以必須使用快取來減輕後端伺服器的壓力.
快取是將一些常用的資料儲存記憶體或者memcache中,在一定的時間內有人來訪問這些資料時,則不再去執行資料庫及渲染等操作,而是直接從記憶體或memcache的快取中去取得資料,然後返回給使用者.
django中的6種快取方式
經常使用的有檔案快取和mencache,redis快取
1.全站快取:
在setting中配置:兩個中介軟體:
middleware = [# 放頁面的時候,應該放在最前面,放快取response
'django.middleware.cache.updatecachemiddleware',
'django.middleware.common.commonmiddleware',
'django.middleware.cache.fetchfromcachemiddleware',
# 取頁面放在這個位置,最後,取快取,request
]
# 以秒為單位快取時間cache_middleware_seconds = 10
# 這個配置是:把快取放在檔案指定的檔案裡面caches =
}}
2.單頁面快取:
在view——檢視層中from django.views.decorators.cache import
cache_page
裝飾器加在檢視函式上即可
快取5秒
@cache_page(5)
3.頁面區域性快取:
在templete中:
#第乙個引數是快取時間,第二個引數是別名
}
django快取總結:
-django快取:快取位置:
-放在記憶體
-放在檔案
-放在資料庫
-放在redis
快取的方式:
三種粒度:
-全站快取
-兩個中介軟體(乙個最前面(放,response),乙個最後面(取,request方法))
-單頁面快取(單個檢視函式)
-裝飾器:傳快取的時間
-from django.views.decorators.cache import
cache_page
-cache_page(5)
-頁面區域性快取:--
....內部的東西會做快取
-
django快取機制
django提供了不同級別的快取粒度 可以快取特定檢視的輸出 可以僅僅快取那些很難生產出來的部分 可以快取整個 設定快取 可將資料快取在資料庫,檔案系統,和記憶體中 setting.py 使用記憶體來進行快取 caches 使用redis進行快取 安裝包 pip install django red...
django快取機制
django有多種快取機制,常見的有 記憶體,資料庫,檔案 說白了,就是將快取放到記憶體,資料庫,檔案 資料庫快取方式 1.建立一張資料庫表 python manage.py createcachetable my table cache 2.配置設定 caches 3.使用快取 4.實現 cach...
Django 快取機制
在動態 中,使用者所有的請求,伺服器都回去伺服器中的進行相應的增 刪 查 改,渲染模板,執行業務邏輯,最後生成使用者看到的頁面。當乙個 的使用者訪問量很大的時候,每一次的後台操作,都會消耗很多的服務端資源,所以必須使用快取來減輕後端伺服器的壓力。快取是將一些常用的資料儲存記憶體或者memcache中...