說明:最近自己在做乙個**的drf專案,也是為了檢驗一下自己學習的效果。
快取工具:redis資料庫
實現快取步驟:
1)安裝drf-extensions
drf-extensions是 drf 框架的自定義擴充套件的集合,其中就包含有快取的擴充套件。
pip install drf-extensions
2)安裝django-redis
pip install django-redis
3)配置settings檔案
rest_framework_extensions =
# redis配置
caches = }}
4)接下來就在我們要進行快取的位置設定
如果是使用的檢視集可以直接繼承cacheresponsemixin類,如果不是可以使用cache_response裝飾器
class novellistapi(cacheresponsemixin, listapiview): # 繼承cacheresponsemixin實現快取,且此類必須放在第一繼承位
5)驗證
可以先將快取時間設定乙個較短的時間(比如10s) 呼叫介面後查驗redis資料庫。
redis最大快取設定策略
一 最大快取設定 示例 maxmemory 100mb 單位 mb,gb。預設為0,沒有指定最大快取,如果有新的資料新增,超過最大記憶體,則會使redis崩潰,所以一點要設定。設定maxmemory之後,配合的要設定快取資料 策略。二 策略演算法設定 當maxmemory限制到達的時候,redis將...
drf實現常用資料快取
在以往的後台資料訪問時,我們往往都會進行資料庫查詢,基本的流程是這樣的 圖中發生了三次請求,則很正常向資料庫查詢了三次。但是現在有這樣乙個場景 我們有1000個人在乙個十分鐘內向乙個我們 都看了同乙個文章,那麼我們有沒有哪些可以優化我們的後端 因為這只是一篇文章在短時間內就被訪問了1000次,當然我...
drf版本控制 django快取
內建的版本控制類 from rest framework.versioning import queryparameterversioning,acceptheaderversioning,namespaceversioning,urlpathversioning 各版本的傳參方式 基於url的ge...