博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Django使用redis实现缓存
阅读量:4556 次
发布时间:2019-06-08

本文共 938 字,大约阅读时间需要 3 分钟。

实现缓存的方式,有多种:本地内存缓存,数据库缓存,文件系统缓存。这里介绍使用Redis数据库进行缓存。

配置

1 CACHES = {2 "default": {3 "BACKEND": "django_redis.cache.RedisCache",4 "LOCATION": "redis://127.0.0.1:6379/1",5 "OPTIONS": {6 "CLIENT_CLASS": "django_redis.client.DefaultClient",7 "PASSWORD": "mysecret", 8 "CONNECTION_POOL_KWARGS": {"max_connections": 100} # 连接池最大连接数 9 }}}

在settings.py配置完后执行  python manage.py createcachetable

 

缓存有站点缓存,和单个view缓存

站点缓存: 

1 MIDDLEWARE = [2 # 站点缓存 , 注意必须在第一个位置3 'django.middleware.cache.UpdateCacheMiddleware',4 ...5 # 站点缓存, 注意必须在最后一个位置6 'django.middleware.cache.FetchFromCacheMiddleware',7 ]

视图缓存:

1 from django.shortcuts import render 2 from django.views.decorators.cache import cache_page 4 from cache.models import Foo 6 # 在需要缓存的视图上添加装饰器, 参数是设置timeout 超时时间, 单位是秒,  7 @cache_page(60) 8 def index(request): 9   bar = Foo.objects.all()10   return render(request, 'cache/index.html', {
'bar': bar})

 

转载于:https://www.cnblogs.com/zepc007/p/10444578.html

你可能感兴趣的文章
php 部分内置函数的使用
查看>>
字符串处理技巧
查看>>
归档及压缩命令
查看>>
Mybatis步骤
查看>>
WPF自定义控件之扩展原生控件
查看>>
《区块链100问》笔记整理——42~49问
查看>>
使用Jquery+EasyUI 进行框架项目开发案例讲解之二---用户管理源码分享
查看>>
深入理解计算机系统(1.4)---并发与并行、浅谈抽象
查看>>
函数依赖的公理化系统
查看>>
rabbitmq学习(四):利用rabbitmq实现远程rpc调用
查看>>
侯捷C++学习(二)
查看>>
EasyPlayer RTSP Android安卓播放器修复播放画面卡在第一帧bug
查看>>
web项目中全局常量的添加
查看>>
搬运工程 启动!
查看>>
局部加权回归(LWR) Matlab模板
查看>>
Connect to the DSP on C6A8168/DM8168/DM8148 using CCS
查看>>
hibernate在使用getCurrentSession时提示no session found for current thread
查看>>
【Luogu1471】方差(线段树)
查看>>
【agc028E】High Elements(动态规划,线段树,贪心)
查看>>
DEV中svg图标的使用
查看>>