缓存

  1.开发调试  

CACHES = {'default':{'BACKEND':'django.core.cache.backends.dummy.DummyCache', #引擎'TIMEOUT':300, #超时时间'OPTIONS':{'MAX_ENTRIES':300, #缓存最大个数'CULL_FREQUENCY':3, #剔除缓存个数},'KEY_PREFIX':'',          #缓存key的前缀(默认空)'VERSION':1,            #缓存key的版本(默认1)'KEY_FUNCTION':函数名    #生成key的函数#缓存中默认生成函数key的组合方式:key_prefix:version:key# 前缀:     版本:  key}}

 

  2.内存

CACHES = {'default':{'BACKEND':'django.core.cache.backends.locmem.LocMemCaChe', #引擎'LOCATION':'unique-anowflake' #储存到内存中的全局变量名'TIMEOUT':300 #超时时间'OPTIONS':{'MAX_ENTRIES':300, #缓存最大个数'CULL_FREQUENCY':3, #剔除缓存个数}'KEY_PREFIX':'','VERSION':1,'KEY_FUNCTION':#缓存中key的组合方式:key_prefix:version:key}}

  

  3.文件

CACHES = {'default':{'BACKEND':'django.core.core.cache.backends.filebased.FileBasedCache', #引擎'LOCATION':'/var/tmp/django_cache' #储存路径'TIMEOUT':300 #超时时间'OPTIONS':{'MAX_ENTRIES':300, #缓存最大个数'CULL_FREQUENCY':3, #剔除缓存个数}'KEY_PREFIX':'','VERSION':1,'KEY_FUNCTION':#缓存中key的组合方式:key_prefix:version:key}}

  

  4.数据库

CACHES = {'default':{'BACKEND':'django.core.cache.backends.DatabaseCache', #引擎'LOCATION':'my_cache_table' #数据库表'TIMEOUT':300 #超时时间'OPTIONS':{'MAX_ENTRIES':300, #缓存最大个数'CULL_FREQUENCY':3, #剔除缓存个数}'KEY_PREFIX':'','VERSION':1,'KEY_FUNCTION':#缓存中key的组合方式:key_prefix:versionfunction}}# 执行创建表命令 python manage.py createcachetable

 

  5.Memcache缓存(python-memcached模块)

                  CACHES = {'default':{'BACKEND':'django.core.core.cache.backends.memcached.MemcachedCache', #引擎'LOCATION':'172.18.43.22:11211' }}CACHES = {'default':{'BACKEND':'django.core.core.cache.backends.memcached.MemcachedCache', #引擎'LOCATION':'/tmp/memcached.sock' }}CACHES = {'default':{'BACKEND':'django.core.core.cache.backends.memcached.MemcachedCache', #引擎'LOCATION':[('172.18.43.22:11211',10),('172.18.43.23:11211',15),] #集群,后面的数值是权重}}

 5.1 Memcache缓存(pylibmc模板) 

 CACHES = {'default':{'BACKEND':'django.core.core.cache.backends.memcached.PyLibMCCache', #引擎'LOCATION':'172.18.43.22:11211' }}CACHES = {'default':{'BACKEND':'django.core.core.cache.backends.memcached.MemcachedCache', #引擎'LOCATION':'/tmp/memcached.sock' }}CACHES = {'default':{'BACKEND':'django.core.core.cache.backends.memcached.MemcachedCache', #引擎'LOCATION':[('172.18.43.22:11211',10),('172.18.43.23:11211',15),] #集群,后面的数值是权重}}

  

 使用

  1. 对单独views函数做缓存(视图整体缓存)

from djando.views.decorators.cache import cache_page@caache_page(10)     #缓存10秒def index(request):

  2. 局部视图缓存

     #首先:{% load cache %}#然后:{% cache 10 c1 %}    #cache 缓存时间    缓存key<h1>{{ ctime }}</h1>{% endcache %}

  3. 全站缓存

#使用中间件:'django.middleware.cache.UpdateCacheMiddleware'  #写入缓存'其他中间件''django.middleware.cache.FetchFromCacheMiddleware'  #获取缓存

  

转载于:https://www.cnblogs.com/crazytao/p/7787973.html

Django----缓存相关推荐

  1. Django缓存机制

    Django缓存机制三个粒度:1 全站缓存 settings.py 全局配置文件用中间件:MIDDLEWARE = [# 'django.middleware.cache.UpdateCacheMid ...

  2. Django 缓存系统

    Django 是动态网站,一般来说需要实时地生成访问的网页,展示给访问者,这样,内容可以随时变化,但是从数据库读多次把所需要的数据取出来,要比从内存或者硬盘等一次读出来 付出的成本大很多. 缓存系统工 ...

  3. drf版本控制 和django缓存,跨域问题,

    drf版本控制 基于url的get传参方式 REST_FRAMEWORK={ # "DEFAULT_AUTHENTICATION_CLASSES":["app01.aut ...

  4. 中间件和Django缓存

    中间件定义: 中间件是一个.一个的管道,如果相对任何所有的通过Django的请求进行管理都需要自定义中间件 中间件可以对进来的请求和出去的请求进行控制 中间件是一类. 看下面的代码在settings里 ...

  5. Django缓存设置

    由于Django构建得是动态网站,每次客户端请求都要严重依赖数据库,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用:缓存,缓存将一个某个views的返回值保存至内存或者memcache中, ...

  6. Django 缓存 Cache

    文章目录 一.缓存 二.Django 缓存应用场景 三.Django 缓存的五种配置 0.通用配置(以redis为例) 1.开发调试 2.将缓存信息保存至文件 3.将缓存信息保存至内存 4.将缓存信息 ...

  7. Django缓存系统

    为什么要做django缓存? 在动态网站中,用户每次请求一个页面,服务器都会执行以下操作:查询数据库,渲染模板,执行业务逻辑,最后生成用户可查看的页面. 这会消耗大量的资源,当访问用户量非常大时,就要 ...

  8. Django 缓存----数据库缓存

    Django 缓存----数据库缓存 1. 在dajngo的setting那加入你想缓存的配置 CACHES = {#这是默认的,不能删除,个人试过会报没有这个默认配置的错'default': {'B ...

  9. Django缓存清理和缓存设置

    Django缓存清理和缓存设置 缓存清理 方法很多,提供两个思路 1.直接去清理用来存缓存的介质,如memcached.redis() 2.自己写程序脚本清空. 3.使用django-extensio ...

  10. Django 缓存6.2

    缓存 对于中等流量的网站来说,尽可能地减少开销是必要的.缓存数据就是为了保存那些需要很多计算资源的结果,这样的话就不必在下次重复消耗计算资源 Django自带了一个健壮的缓存系统来保存动态页面,避免对 ...

最新文章

  1. 设计模式-原型模式(Prototype)
  2. 干货 | 27 个问题,告诉你 Python 为什么如此设计?
  3. 负载均衡层设计方案(2)——Nginx安装
  4. 【Elasticsearch】所有可用 Qbox 插件的概述:第二部分
  5. 《Linux内核设计与实现》 第八周读书笔记 第四章 进程调度
  6. 文本匹配开山之作--双塔模型及实战
  7. 吐血整理!顶级程序员的百宝箱来咯!| 原力计划
  8. 肖健雄的无人车公司AutoX,现在要在美国配送生鲜了
  9. 《精通Wireshark》—第1章1.5节抓取信息的方式
  10. rocketmq模块架构图
  11. cuda10.0及其驱动纯净卸载(笔记)
  12. 自动化专业是计算机相关专业吗,自动化专业属于什么学科门类
  13. matplotlib中堆积图、分块图、气泡图的绘制
  14. M27C64A引脚说明
  15. ubuntu系统打开.chm文件方式
  16. 【Python-神经网络】
  17. 注册百度地图开发者账户创建
  18. Java字节码编程之非常好用的javassist
  19. 脉冲宽度调制(SPWM)Simulink仿真教程
  20. hyu 1698 Just a Hook

热门文章

  1. php intval 变小,php intval() 小数时安全漏洞分析
  2. linux 查看目录挂载的ip,Linux挂载IPSAN和FCSAN操作,Linux挂载NFS文件系统
  3. innodb主键的长度为什么不能大于767字节
  4. 一个三非渣本的Java校招秋招之路,搞懂这些直接来阿里入职
  5. 【深度学习入门到精通系列】Gamma变换(校正)
  6. python【力扣LeetCode算法题库】1071. 字符串的最大公因子
  7. JAVA怎么创建对象组_java – 如何根据特定字段创建一组有序的对象?
  8. 单机安装oracle,Oracle 11G 单机安装
  9. html按钮颜色属性值,HTML button formmethod 属性 - HTML 颜色参考手册 - 自强学堂
  10. 几何画板200个经典课件_几何画板Sketchpad Mac(数学教学软件)中文版