Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用ElastiCache redis配置django redis时出现问题(启用群集模式)_Django_Redis_Amazon Elasticache - Fatal编程技术网

使用ElastiCache redis配置django redis时出现问题(启用群集模式)

使用ElastiCache redis配置django redis时出现问题(启用群集模式),django,redis,amazon-elasticache,Django,Redis,Amazon Elasticache,我正在Django项目中工作,该项目目前使用ElastiCache Redis 3.2.6,多个节点使用“Redis_cache.RedisCache”后端进行“主/从”配置。这在目前运行良好 但是,我正在将项目迁移到启用集群模式的新ElastiCache Redis 5.0.3实例。我在为Redis集群配置从Django到ElastiCache的配置端点的连接时,没有找到任何记录在案的方法。我发现的最接近的情况是,但当我尝试该配置时,我得到一个错误,该错误表示: rediscluster.ex

我正在Django项目中工作,该项目目前使用ElastiCache Redis 3.2.6,多个节点使用“Redis_cache.RedisCache”后端进行“主/从”配置。这在目前运行良好

但是,我正在将项目迁移到启用集群模式的新ElastiCache Redis 5.0.3实例。我在为Redis集群配置从Django到ElastiCache的配置端点的连接时,没有找到任何记录在案的方法。我发现的最接近的情况是,但当我尝试该配置时,我得到一个错误,该错误表示:

rediscluster.exceptions.RedisClusterException:无法连接Redis群集。请至少提供一个可访问的节点


有没有更好的方法来完成这一点,这是我所缺少的?

我找到了。这是一个工作配置:

"default": {
    'BACKEND': 'django_redis.cache.RedisCache',
    'LOCATION':"redis://mycluster.foo.clustercfg.use1.cache.amazonaws.com/0",
    'OPTIONS': {
        'REDIS_CLIENT_CLASS': 'rediscluster.StrictRedisCluster',
        'CONNECTION_POOL_CLASS': 'rediscluster.connection.ClusterConnectionPool',
        'CONNECTION_POOL_KWARGS': {
            'skip_full_coverage_check': True  # AWS ElasticCache has disabled CONFIG commands
         }
    }
}

我想出来了。这是一个工作配置:

"default": {
    'BACKEND': 'django_redis.cache.RedisCache',
    'LOCATION':"redis://mycluster.foo.clustercfg.use1.cache.amazonaws.com/0",
    'OPTIONS': {
        'REDIS_CLIENT_CLASS': 'rediscluster.StrictRedisCluster',
        'CONNECTION_POOL_CLASS': 'rediscluster.connection.ClusterConnectionPool',
        'CONNECTION_POOL_KWARGS': {
            'skip_full_coverage_check': True  # AWS ElasticCache has disabled CONFIG commands
         }
    }
}

如果模块“rediscluster\”未定义“StrictRedisCluster\”属性/类,请使用“rediscluster.rediscluster”代替“rediscluster.StrictRedisCluster”error@Vinay是的,这是正确的方法。当我遇到此问题时,该类不存在。如果您得到的模块“rediscluster”未定义“StrictRedisCluster”属性/类,请使用“rediscluster.rediscluster”代替“rediscluster.StrictRedisCluster”error@Vinay是的,这是正确的方法。当我遇到这个问题时,这个类不存在。