設置緩存
- 數據庫緩存
- 文件緩存
- 內存緩存 如: Memcached
Memcached
使用
模塊python-memcached和模塊pylibmc
更改setting 文件的CACHES 配置
將 BACKEND 設置爲django.core.cache.backends.memcached.MemcachedCache
或者 django.core.cache.backends.memcached.PyLibMCCache
(取決於你所選綁定memcached的方式)
將 LOCATION 設置爲 ip:port 值,ip 是 Memcached 守護進程的ip地址, port 是Memcached 運行的端口。或者設置爲 unix:path 值,path 是 Memcached Unix socket file的路徑.
數據庫緩存
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.db.DatabaseCache',
'LOCATION': 'my_cache_table',
}
}
執行python manage.py createcachetable
文件系統緩存
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache',
'LOCATION': '/var/tmp/django_cache',
}
}
API
from django.core.cache import caches
cache1 = caches['myalias']
cache2 = caches['myalias']
cache1 is cache2
from django.core.cache import cache
#相當於caches['default']
在Django 1.7之前,這個函數是獲取緩存實例的規範方式。它也可以用於創建具有不同配置的新緩存實例。
from django.core.cache import get_cache
get_cache('default')
get_cache('django.core.cache.backends.memcached.MemcachedCache', LOCATION='127.0.0.2')
get_cache('default', TIMEOUT=300)