当前位置: 首页 > 知识库问答 >
问题:

从Java连接到AWS Elasticache(Redis集群)的正确方式是什么?

李辉
2023-03-14

我是AWS Elasticache redis的新手,我在endpoint以下。

我对使用Jedis和Redisson感到困惑,因为两者都提供单连接和群集连接类。

就像在Jedis,对于一个单一的连接,我们可以使用:

Jedis conn = new Jedis("endpoint_address");

对于集群连接,我们使用:

Set<HostAndPort> jedisClusterNodes = new HashSet<HostAndPort>();
jedisClusterNodes.add(new HostAndPort("redis_cluster_ip", 7379));
JedisCluster jc = new JedisCluster(jedisClusterNodes);

当我想使用Redisson时,这些选项也会出现。我不想比较这两个库,我的问题是:当你只有一个endpoint,仍然可以利用AWS自动缩放功能时,哪一个是连接到AWS Redis Elasticache集群的正确方法?

预期答案是:使用单一或群集模式。

感谢:)

共有2个答案

东门越
2023-03-14

对于AWS Elasticache Redis或其他类似的托管服务,应在Redisson中使用复制配置。在留档中描述了用法。

皇甫德庸
2023-03-14

这取决于如何配置redis集群。是否启用群集模式。

你可以在控制台找到它

http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/Endpoints.html

Redis(群集模式禁用)群集,将主endpoint用于所有写入操作。将各个节点endpoint用于读取操作(在API/CLI中,这些endpoint称为读取endpoint)。

Redis(已启用群集模式)群集,对所有操作使用群集的配置终结点。您必须使用支持Redis群集(Redis 3.2)的客户端。您仍然可以从单个节点endpoint读取(在API/CLI中,这些endpoint称为读取endpoint)。

或者使用AWS CLI

aws elasticache describe-cache-clusters \
    --cache-cluster-id mycluster \
    --show-cache-node-info  

http://docs.aws.amazon.com/cli/latest/reference/elasticache/describe-cache-clusters.html

配置endpoint-

 类似资料:
  • 我们在我们的项目中使用连接池。我们在我们的项目中看到,在连接关闭后,语句也会关闭。我知道在连接池的情况下,连接关闭后,到数据库的物理连接不会关闭,而是返回到池进行重用。所以我的问题是: 如果在连接关闭后关闭语句会发生什么?语句是否会正确关闭/关闭连接是否会关闭所有语句,关闭语句是多余的/语句是打开的,尽管连接返回到池中,但由于打开语句,它是不可重用的?(我们同时使用Statement和Prepar

  • 由于单个redis实例不符合我的要求,我选择了redis cluster。我用三个节点组成集群,并将数据填充到集群中。当我使用JedisCluster从集群获取数据时,它比单个实例花费更多的时间。那么,将绝地与redis星系团连接起来的正确方式是什么呢。我如何利用连接池将绝地与redis集群连接起来?

  • 我已经从源代码安装和编译了Redis,并试图连接到Amazon ElastiCache(Redis)集群。 我可以毫无问题地连接到默认的本地主机,但尝试连接到AWSendpoint会导致无限的挂起。 默认情况下: 现在,这是连接到endpoint的尝试,来自AWS留档主题的副本: 这会无限挂起,而不会向stderr/stdout发出任何消息。 (请注意,这是一个endpoint名称示例;我已验证我

  • 当我试图按照以下部署指南连接到主节点时,我面临着MasternotFounderRorr:https://docs.bitnami.com/tutorials/deploy-redis-sentinel-production-cluster/ 连接主Redis Sentinel节点的代码是: 我面对红魔。哨兵。MasternotFounderRorr:没有为“MyMaster”错误找到master

  • 我在从Lambda函数连接Elasticache时遇到问题,我已完成以下操作: 创建了一个新的安全组 Internet正常工作,我通过打开URL验证stackoverflow.com。但是Elasticache自动发现超时。是否需要进行任何额外的配置? 更新I将安全组的入站规则添加到端口6379,现在仍然超时。

  • 问题内容: 我正在尝试使用jdbc-odbc桥创建一个简单的连接: 但是然后我得到这个异常: 有任何想法吗? 2009年3月24日更新:现在可以使用了。创建了一个用户数据源,由于某种原因该异常消失了。 作为一个普遍的问题,用Java处理数据库连接的最佳方法是什么? 问题答案: 为了回答您的一般问题,我想说处理Java中数据库连接的最佳方法是避免JDBC- ODBC桥。可以测试或学习JDBC,但不能