Jedis lib를 사용하여 로컬로 실행되는 Java 클라이언트를 사용하여 aws에서 ElasticCache (Redis)에 액세스하려고합니다. here 단계를 따라 로컬로 redis-cli를 사용하여 redis에 액세스 할 수있었습니다.Jedis Lib을 사용하여 aws에서 로컬로 ElasticCache 클러스터에 연결할 수 없습니다.
문제는 Jedis lib를 사용하여 aws Redis에 연결하려고 할 때 NAT 공용 주소가 슬롯 (initializeSlotsCache)을 계산하기 위해 redis 개인 IP로 변환되는 것입니다. 이 기능을 사용 중지하는 방법을 찾지 못했습니다. 해결 방법이 있습니까? 여기
우리가 Jedis을 사용하여 연결하는 방법은 다음과 같습니다 우리는 매핑 NAT를 사용하는
factory = new JedisConnectionFactory(new RedisClusterConfiguration(this.clusterProperties.getNodes()));
factory.setUsePool(true);
factory.setPoolConfig(this.jedisPoolConfig());
factory.afterPropertiesSet();
return factory;
각 노드에 대해 IPS. 하지만 Jedis 라이브러리는 캐시에 개인 ips를 저장하므로 다음과 같은 예외가 발생합니다.
redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool
어떤 제안이 좋을까요? 우리는 옵션이 부족합니다. 미리 감사드립니다.