zoukankan      html  css  js  c++  java
  • Django中使用缓存

    settings中的配置

    CACHES = {
    	'default': {
    		'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache',  # 指定缓存使用的引擎
    		'LOCATION': 'path',  # 指定缓存的路径
    		'TIMEOUT': 300,  # 缓存超时时间(默认为300秒,None表示永不过期)
    		'OPTIONS': {
    			'MAX_ENTRIES': 300,  # 最大缓存记录的数量(默认300)
    			'CULL_FREQUENCY': 3,  # 缓存到达最大个数之后,剔除缓存个数的比例,即:1/CULL_FREQUENCY(默认3)
    		}
    	}
    }
    

    按照缓存粒度不同分类

    单页面缓存

    在视图函数上加一个装饰器
    
    from django.views.decorators.cache import cache_page
    
    	@cache_page(5)    5 代表缓存时间	
        def testpage():
        	pass
    

    局部缓存

    # 模板文件中这样使用
    
    {% load cache %}
    {% cache 5 'test'%}    第一个参数表示缓存时间,第二个参数是key值(取缓存的时候,需要根据key值取)
    当前时间:{{ time }}
    {% endcache %}
    

    全站缓存

    #settings文件夹中的位置
    'django.middleware.cache.UpdateCacheMiddleware',						'django.middleware.cache.FetchFromCacheMiddleware'
    

    视图函数中使用缓存

    # view.py
    cache.set('test_data',{'name':'龙妈','age':18},5)
    cache.get('test_data')
    
  • 相关阅读:
    专题——递归
    今日听郝斌老师鸡汤
    线性结构的两种常见应用之一 队列
    线性结构的两种应用之一——栈
    C++常用库函数
    洛谷 标志重捕法?
    c++复习——临考前的女娲补天 >=.<
    c++复习——类(2)
    c++复习——类(1)
    Python单元测试
  • 原文地址:https://www.cnblogs.com/ruhai/p/11270208.html
Copyright © 2011-2022 走看看