django緩存優化中caches參數如何配置?


在python開發中,如果運營django進行編寫,為了提升效率,常常需要優化緩存,接下來和大家介紹的就是緩存優化中必須只曉得caches參數相關知識,一起來看看吧。

CACHES 配置參數概述 - 格式

CACHES 字典配置格式如下

{
'default': {
‘BACKEND’:
'django.core.cache.backends.locmem.LocMemCache’,
}
}

配置 CACHES 字典時必須配置 default 緩存


CACHES 配置參數概述 - BACKEND

支持的 BACKEND:

1)'django.core.cache.backends.db.DatabaseCache'
2)'django.core.cache.backends.dummy.DummyCache'
3)'django.core.cache.backends.filebased.FileBasedCache'
4)'django.core.cache.backends.locmem.LocMemCache'
5)'django.core.cache.backends.memcached.MemcachedCache'
6)'django.core.cache.backends.memcached.PyLibMCCache’
//可配置的緩存后端列表

 

CACHES 配置參數概述 - 附加參數

每個緩存后端都可以設置附加參數,控制緩存行為。可配置如下參數:

1)TIMEOUT

cache 默認過期時間(seconds),未設置則為300s(5mins)

2)OPTIONS

可選項配置,不同的后端,可選項配置不同

3)KEY_PREFIX

默認會被自動加到所有緩存 keys 的前端

4)VERSION

默認緩存 keys 的 version

5)KEY_FUNCTION

生成最終緩存 keys 的函數路徑

像locmem, filesystem 和 database 緩存都實現了 cull 策略,參數如下:
culling 策略參數(OPTIONS中):
MAX_ENTRIES
刪除舊數據之前,允許在緩存中存放的最大數量,默認:300
CULL_FREQUENCY
當緩存數目達到 MAX_ENTRIES 時,就會刪除部分緩存,刪除率為1/CULL_REQUENCY, 如果 CULL_FREQUENCY = 2 ,當達到 MAX_ENTRIES 時,就會刪除一半數據。默認值:3


CACHES 配置參數概述 - 示例

CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache',
'LOCATION': '/var/tmp/django_cache',
'TIMEOUT': 60,
'OPTIONS': {
'MAX_ENTRIES': 1000
}
}
}

注意:無效的參數會被忽略,不會影響整個項目


文章來源:麥子學院

原文鏈接:http://www.maiziedu.com/wiki/django/caches/


免責聲明!

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



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