Django使用redis实现缓存

摘要:
实现缓存的方法有很多:本地内存缓存、数据库缓存和文件系统缓存。本文描述如何使用Redis数据库进行缓存。

实现缓存的方式,有多种:本地内存缓存,数据库缓存,文件系统缓存。这里介绍使用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 importrender
2 from django.views.decorators.cache importcache_page
4 from cache.models importFoo
6 #在需要缓存的视图上添加装饰器, 参数是设置timeout 超时时间, 单位是秒, 
7 @cache_page(60)
8 defindex(request):
9   bar =Foo.objects.all()
10   return render(request, 'cache/index.html', {'bar': bar})

免责声明:文章转载自《Django使用redis实现缓存》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Quickcocos从安装到打包[转]微信小程序、微信公众号、H5之间相互跳转下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Django Rest_Framework(drf)介绍,以及安装和配置

1、Django Rest_Framework核心思想: 缩减编写api接口的代码 Django REST framework是一个建立在Django基础之上的Web 应用开发框架,本质上就是一个内置在django里面的子应用,可以快速的开发REST API接口应用。 在REST framework中,提供了序列化器对象Serializer的定义,可以帮助...

Redis构建全局并发锁

Redis构建全局并发锁 https://www.cnblogs.com/FG123/p/9990336.html 谈起Redis的用途,小伙伴们都会说使用它作为缓存,目前很多公司都用Redis作为缓存,但是使用Redis仅仅作为缓存未免太大材小用了。深究Redis的原理后你会发现它有很多用途,在很多场景下能够使用它快速地解决问题。常见的用途有:分布式锁控...

微软的坑:Url重写竟然会引起IIS内核模式缓存不工作

万万没有想到!当初为了解决使用负载均衡时记录客户端IP地址的问题,在IIS URL Rewrite Module中增加了一条URL重写规则(详见迁入阿里云后遇到的Request.UserHostAddress记录IP地址问题):3 <rewrite> <allowedServerVariables> &...

StackExchange.Redis.DLL 操作redis加强版

直接引用StackExchange.Redis.dll这一个dll来操作redis App.config配置 <?xml version="1.0" encoding="utf-8" ?> <configuration> <startup> <supportedRuntime...

django学习-29.表单提交方式之一:post请求(注册/登录/改密)

目录结构 1.写这篇博客的目的 2.完整操作流程 2.1.第一步:新增相关html页面 2.1.1.新增一个【index_html.html】 2.1.2.新增一个【login_html.html】 2.1.3.新增一个【register_html.html】 2.1.4.新增一个【register_success_html.html】 2.1.5.新增一...

EdgeX 1.2研究-2 读取Modbus协议设备

1、使用的基于下面这个链接的示例: https://docs.edgexfoundry.org/1.2/examples/Ch-ExamplesAddingModbusDevice/ 这个示例没有跑通,主要卡在这里的讲解配置文件和下载的版本对应不上,经过两天的摸索,使用如下方式实现 2、使用下面compose文件安装 # /***************...