zoukankan      html  css  js  c++  java
  • Django redis 应用

    一、自定义连接池

    与python中使用连接池一样(使用单例对象)

    注意:每个视图函数都要有

    conn = redis.Redis(connection_pool=POOL)

    二、使用第三方模块(django-redis)

    1、安装

    pip3 install django-redis 

    2、设置setting.py文件

    CACHES = {
        "default": {
            "BACKEND": "django_redis.cache.RedisCache",
            "LOCATION": "redis://ip:6379",
            "OPTIONS": {
                "CLIENT_CLASS": "django_redis.client.DefaultClient",
                "CONNECTION_POOL_KWARGS": {"max_connections": 100},
                "PASSWORD": "密码",
            }
        }
    }

    3、使用

    from django_redis import get_redis_connection
    def index(request):
        # default setting的配置文件
        con = get_redis_connection('default')
        con.set('k1', 'v1')
        print(con.get('k1'))    # b'v1'
        return HttpResponse('设置ok')

    三、高级使用

    1、全栈使用(中间件)

    MIDDLEWARE = [
        'django.middleware.cache.UpdateCacheMiddleware',
        其它中间件,          
        'django.middleware.cache.FetchFromCacheMiddleware',
    ]

    2、单独视图使用,优先级高于全局视图

    from django.views.decorators.cache import cache_page
    
    @cache_page(60 * 15)
    def my_view(request):
        ...

    3、局部 template使用

    a. 引入TemplateTag
    
        {% load cache %}
    
    b. 使用缓存
    
        {% cache 5000 缓存key %}
            缓存内容
        {% endcache %}
  • 相关阅读:
    MYSQL转MSSQL
    SVN 服务器IP地址变更后客户端的修改
    gridview
    gridview外边距
    Android开发:自定义GridView/ListView数据源
    Android之Adapter用法总结
    collection set
    listview优化
    android应用开发全程实录-你有多熟悉listview
    android模块
  • 原文地址:https://www.cnblogs.com/wt7018/p/11568532.html
Copyright © 2011-2022 走看看