2017-05-16 81 views
3

我們試圖使用使用Jedis lib在本地運行的Java客戶端訪問de ElasticCache(Redis)。我們可以按照步驟here在本地使用redis-cli訪問redis。無法使用Jedis Lib在aws上本地連接到ElasticCache集羣

問題是,當我們嘗試使用Jedis lib連接到aws Redis時,NAT公共地址正在被轉換爲redis專用IP以計算插槽(initializeSlotsCache)。我們無法找到禁用此功能的方法。有沒有解決方法?

下面我們連線瞭如何使用Jedis:

factory = new JedisConnectionFactory(new RedisClusterConfiguration(this.clusterProperties.getNodes())); 
    factory.setUsePool(true); 
    factory.setPoolConfig(this.jedisPoolConfig()); 
    factory.afterPropertiesSet(); 
    return factory; 

我們使用NAT映射IPS每個節點。但是Jedis lib將私有ips保存在緩存中,因此我們得到以下例外:

redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool 

任何建議都會很棒!我們沒有選擇。先謝謝你。

回答

0

您無法從AWS環境外部連接到AWS託管的redis。

我們遇到了類似的問題,我們的工作是爲開發和單元測試安裝本地redis實例。

相關問題