5

我是AWS Elasticache redis的新手,而且我低于端点。

图片

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

就像在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时,也会出现这些选项。我不想比较这两个库,我的问题是:当您只有一个端点并且仍然可以利用 AWS 自动扩展功能时,哪种方法是连接到AWS Redis Elasticache集群的正确方法?

预期答案是:使用 SINGLE 或 CLUSTER MODE。

谢谢 :)

4

2 回答 2

4

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

您可以在控制台中找到它

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

Redis(已禁用集群模式)集群,​​使用 Primary Endpoint 进行所有写入操作。将各个节点端点用于读取操作(在 API/CLI 中,这些端点称为读取端点)。

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

或者使用 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

ConfigurationEndpoint -> (structure) 表示 Memcached 集群端点,如果在集群上启用了自动发现,应用程序可以使用该端点连接到集群中的任何节点。配置端点将始终包含 .cfg。示例:mem-3.9dvc4r.cfg.usw2.cache.amazonaws.com:11211

于 2017-07-20T01:30:28.153 回答
0

您应该在 Redisson 中为 AWS Elasticache Redis 或其他类似的托管服务使用复制配置。用法在文档中进行了描述。

于 2017-07-19T22:52:52.153 回答