• Django缓存机制


    Django缓存机制
        三个粒度:
        1 全站缓存  settings.py 全局配置文件
            用中间件:
            MIDDLEWARE = [
                # 'django.middleware.cache.UpdateCacheMiddleware',
                'django.middleware.security.SecurityMiddleware',
                。。。。。。
                # 'django.middleware.cache.FetchFromCacheMiddleware'
    
                ]
            # CACHE_MIDDLEWARE_SECONDS=10
        2 单视图: 视图层
            用装饰器 FBV
            from django.views.decorators.cache import cache_page
            # @cache_page(24*60*60)
        3 局部页面: 模板层:html文件
            {% load cache %}
            {% cache 5 'test' %}   两个参数:时间,唯一标识
            {{ ctime }}
            {% endcache %}
    
            
        Django6种缓存的配置 一般用的最多的是redis或者内存
        settings配置:
        #内存:
        CACHES = {
         'default': {
          'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',  # 指定缓存使用的引擎
          'LOCATION': 'unique-snowflake',         # 写在内存中的变量的唯一值 
          'TIMEOUT':300,             # 缓存超时时间(默认为300秒,None表示永不过期)
          'OPTIONS':{
           'MAX_ENTRIES': 300,           # 最大缓存记录的数量(默认300)
           'CULL_FREQUENCY': 3,          # 缓存到达最大个数之后,剔除缓存个数的比例,即:1/CULL_FREQUENCY(默认3)
          }  
         }
        }
        
        # redis配置
        CACHES = {
            "default": {
                "BACKEND": "django_redis.cache.RedisCache",
                "LOCATION": "redis://127.0.0.1:6379",
                "OPTIONS": {
                    "CLIENT_CLASS": "django_redis.client.DefaultClient",
                    "CONNECTION_POOL_KWARGS": {"max_connections": 100}
                    # "PASSWORD": "123",
                }
            }
        }
  • 相关阅读:
    Python JSON的基本使用
    python socket函数详解
    python关于字符编码的基本操作
    关于git的一些简单命令
    CS和BS结构的优缺点
    Web测试详细点
    详解SESSION与COOKIE的区别
    如何测试一个网页登陆界面
    二层交换机、三层交换机和路由器的原理及区别
    LSA分类
  • 原文地址:https://www.cnblogs.com/xujinjin18/p/9847020.html
Copyright © 2020-2023  润新知