一、缓存
1、定义和意义
缓存是一类可以更快的读取数据的介质统称,也指其他可以加快数据读取的存储方式。一般用来存储临时数据,常用的介质是读取速度很快的内存。
缓存的意义:视图渲染有一定的成本,数据库的频繁查询过高;所以对于低频变动的页面可考虑使用缓存技术,减少实际渲染次数,用户拿到的响应的时间成本会更低。
2、配置
(1)将缓存的数据存储在数据库中
尽管存储介质没有更换,但是当把一次负责查询的结果直接存储到表里,比如多个条件的过滤查询结果,可避免重复进行复杂查询,提升效率。
例:
#数据库缓存配置需要手动执行创建表的命令
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.db.DatabaseCache',
'LOCATION': 'my_cache_table',
'TIMEOUT': 300, #缓存保存时间 单位秒,默认值为300,
'OPTIONS':{
'MAX_ENTRIES': 300, #缓存最大数据条数
'CULL_FREQUENCY': 2,#缓存条数达到最大值时 删除1/x的缓存数据
}
}
}
注:创建缓存数据库
python manage.py createcachetable
(2)数据缓存到服务器内存中