本地数据库缓存在settings文件中添加:
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.db.DatabaseCache',
'LOCATION': 'my_cache_table', }}
2.在终端:
python manage.py createcachetable
在数据库中就会出现一张'my_cache_table'表
在view中使用:也用了装饰器
cache_page@cache_page(60*2)
def xxx(request):
....
使用redis缓存:
1.配置
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.db.DatabaseCache',
'LOCATION': 'my_cache_table',
"BACKEND": "django_redis.cache.RedisCache",
"LOCATION": "redis://127.0.0.1:6379/1",
"OPTIONS": {
"CLIENT_CLASS": "django_redis.client.DefaultClient", }
}}
在views中导入redis数据库对应的cache
from django.core.cache import cache
cache.get(key)
cache.set(key,value)
结合数据库使用:
缓存的参数可以添加:
CACHES = {
'default': {
'BACKEND': 'django_redis.cache.RedisCache',
'LOCATION': redis://127.0.0.1:6379/1',
'TIMEOUT': 300,
缓存超时时间(默认300,None表示永不过期,0表示立即过期)
'OPTIONS':{
'MAX_ENTRIES': 300,
最大缓存个数(默认300)
'CULL_FREQUENCY': 3,
缓存到达最大个数之后,剔除缓存个数的比例,即:1/CULL_FREQUENCY(默认3);实际中一般不这么用,太简单粗暴了。
}
}
}
网友评论