gpt4 book ai didi

java - 生菜-Java-AWS ElastiCache-Redis-连接超时

转载 作者:行者123 更新时间:2023-12-03 06:44:45 26 4
gpt4 key购买 nike

我对Redis和AWS ElastiCache服务是完全陌生的。我创建了一个Redis集群(5.0.6 v),其中包含1个分片,2个节点,无加密传输,无静态加密,无Redis Auth和多可用区。
我可以看到主要端点,读取器端点并单击集群,可以看到两个与主要端点和读取器端点不同的节点端点。
我正在将Lettuce与简单的Maven项目连接使用,但连接超时。我尝试了上述端点的所有组合,但没有运气。我已将我的ec2instance(我正在运行代码的地方)添加到ElastiCache子网组中。仍然没有运气。
使用的代码:

RedisClusterClient clusterClient = RedisClusterClient.create(Arrays.asList(node1, node2));
StatefulRedisClusterConnection<String, String> connection = clusterClient.connect();
RedisAdvancedClusterAsyncCommands<String, String> asyncCommands = connection.async();
pom(仅依赖项):
 <dependency>
<groupId>io.lettuce</groupId>
<artifactId>lettuce-core</artifactId>
<version>5.2.2.RELEASE</version>
</dependency>
我有使用纯java-maven的用例,没有像spring boot 这样的框架
感谢帮助。

最佳答案

如果有人在寻找类似的问题来连接到ElastiCache主数据库,这可能会有所帮助:
修改安全组入站流量并使用以下客户端创建模型解决了:

RedisURI upstreamUri = RedisURI.Builder.redis(primayNodeUrl, 6379).build();
RedisClient redisClient = RedisClient.create();
StatefulRedisMasterReplicaConnection<String, String> connection =
MasterReplica.connect(
redisClient,
StringCodec.UTF8,
upstreamUri);
connection.setReadFrom(ReadFrom.REPLICA_PREFERRED);
RedisAsyncCommands<String, String> asyncCommands = connection.async();

关于java - 生菜-Java-AWS ElastiCache-Redis-连接超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62756605/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com