# 开发调试缓存(虽然配置上,但实际没有缓存,还是到数据库取)
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.dummy.DummyCache', # 引擎
#注: 下面这些参数时公用的,五种缓存都可以使用
'TIMEOUT': 300, # 缓存超时时间(默认300,None表示永不过期,0表示立即过期)
'OPTIONS':{
'MAX_ENTRIES': 300, # 最大缓存个数(默认300)
'CULL_FREQUENCY': 3, # 缓存到达最大个数之后,剔除缓存个数的比例(3就是1/3)
},
}
}
# 注:内存缓存本质上就是在内存中维护一个字典,所存储的形式就是字典的键值对组合
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'LOCATION': 'unique-snowflake', #这个参数指定变量名必须唯一
}
}
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache',
'LOCATION': os.path.join(BASE_DIR,'cache'), #缓存内容存放的文件夹路径
}
}
使用该缓存需要执行以下命令创建一个数据库表
python manage.py createcachetable
# 注:执行创建表命令 python manage.py createcachetable
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.db.DatabaseCache',
'LOCATION': 'my_cache_table', # 数据库表名(名字是自己取的)
}
}
# 注:Memcache缓存有两个模块:python-memcached模块、 pylibmc模块
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': '127.0.0.1:11211', #使用ip加端口连接memcached
}
}
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': 'unix:/tmp/memcached.sock', #以文件的形式连本地memcached
}
}
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': [ # memcached天生支持集群
#1 均衡分配
'172.19.26.240:11211',
'172.19.26.242:11211',
#2 调整权重(权重和请求比例成正比)
('172.19.26.240:11211',1),
('172.19.26.242:11211',10),
]
}
}
# 注: pylibmc模块只改变上面'BACKEND'配置为下面样式即可
# 'BACKEND': 'django.core.cache.backends.memcached.PyLibMCCache',
更多有关Django的缓存详细内容,可以参考一下文章
https://blog.csdn.net/qq_34493908/article/details/80825935?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_baidulandingword~default-0.no_search_link&spm=1001.2101.3001.4242.1&utm_relevant_index=2