有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java无法使用Jedis Lib本地连接到aws上的ElasticCache群集

我们正在尝试使用一个使用jedislib在本地运行的Java客户端访问aws上的deelasticcache(Redis)。我们能够按照步骤here在本地使用redis cli访问redis

问题是,当我们尝试使用Jedis lib连接到aws Redis时,NAT公共地址被转换为Redis私有ip,以便计算插槽(initializeSlotsCache)。我们找不到禁用此功能的方法。有什么解决办法吗

以下是我们如何使用绝地连接:

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

我们正在为每个节点使用映射的NAT IP。但是绝地武士库正在缓存中保存私有IP,因此我们得到以下例外:

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

任何建议都很好!我们别无选择。先谢谢你


共 (1) 个答案

  1. # 1 楼答案

    无法从AWS环境外部连接到AWS托管的redis

    我们曾经遇到过类似的问题,我们所做的工作是为开发人员和单元测试安装一个本地redis实例