zoukankan      html  css  js  c++  java
  • Django Redis配置

    Django Redis配置

    # Django默认不支持redis,需要第三方插件来支持
    pipenv install django-redis
    pipenv install hiredis	# 不是必须
    
    vim settings.py
    CACHES = {
        'default': {
            'BACKEND': 'django_redis.cache.RedisCache',
            'LOCATION': 'redis://192.168.2.128:6379/1',
            'TIMEOUT': 300,   # NONE 永不超时
            'OPTIONS': {
                'CLIENT_CLASS': 'django_redis.client.DefaultClient',	# redis-py 客户端
                'PARSER_CLASS': 'redis.connection.HiredisParser',			# hiredis是C客户端,性能更高
                'PASSWORD': 'mysecret',	# 密码,可不设置
                'PICKLE_VERSION': -1,		# 插件使用PICKLE进行序列化,-1表示最新版本
                'SOCKET_CONNECT_TIMEOUT': 5,	# 连接超时
                'SOCKET_TIMEOUT': 5,	# 读写超时
                'CONNECTION_POOL_KWARGS': {"max_connections": 100}	# 连接池最大连接数
            },
            'CONNECTION_POOL_CLASS': 'redis.connection.BlockingConnectionPool',	# 自定义连接池
        }
    }
    
    # 支持主从哨兵模式
    CACHES = {
        'default': {
            'BACKEND': 'django_redis.cache.RedisCache',
            'LOCATION': [
            	'redis://192.168.2.128:6379/1',	# master
            	'redis://192.168.2.128:6380/1',	# slave
            ]
            
        }
    }
    
    # cache是django提供的代理对象,根据配置的BACKEND进行操作
    from django.core.cache import cache
    cache.set('foo', 'value', timeout=25)
    cache.set('foo', 'value', timeout=None)
    cache.ttl('foo')
    cache.persist('foo')	# 永不过期
    cache.expire("foo", timeout=5)
    cache.keys("foo_*")
    cache.iter_keys("foo_*")
    cache.delete_pattern("foo_*")
    cache.set("key", "value1", nx=True)	# 实现 SETNX原子操作
    # key必须存在,否则报错
    cache.incr("key")	
    cache.incr("key")
    # 获得所使用的客户端对象
    from django_redis import get_redis_connection
    con = get_redis_connection("default")
    
  • 相关阅读:
    _#【命名】 / _
    _#【插件】
    _#【命名】样式类
    linux dd命令
    python urllib2和urllib的区别
    hadoop的find
    hadoop的fs基本命令
    /etc/profile和 . profile 文件
    广告sdk
    linux下查找文件的常用命令
  • 原文地址:https://www.cnblogs.com/Peter2014/p/11627762.html
Copyright © 2011-2022 走看看