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

连接Redis集群与jedis

冯奇思
2023-03-14

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

共有2个答案

马天逸
2023-03-14

JedisCluster创建自己的池。创建JedisCluster对象时,可以提供池的配置。从那时起,您可以将群集视为单个实例,请求将转到适当的群集实例。

JedisCluster集群-新的JedisCluster(…)。。。簇设置(键、值)

通过getSlot()可以尝试找出它去了哪个实例,但不能保证从一刻到下一刻,您设置的密钥都在同一个实例上。由于故障切换,它可能已经移动了。

翟誉
2023-03-14

当您在jedis集群中检索数据时,您会观察到延迟,这是很正常的,这取决于您拥有的集群策略,因为您将从一个jedis到另一个jedis以获取数据。红色箭头,是jedis集群中添加查询时间的原因。

访问正确实例的唯一方法是从键中了解数据的位置,在键中介绍位置示例:“instance3/user/5”或查找对键执行计算的位置实例。

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

  • 我已经使用以下指南成功地设置了一个密码保护的redis群集: 我使用ruby和下面的连接字符串…我做错了吗? 我得到的错误是:

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

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

  • Redis 集群(Redis Cluster) 是 Redis 提供的分布式数据库方案。 既然是分布式,自然具备分布式系统的基本特性:可扩展、高可用、一致性。 Redis 集群通过划分 hash 槽来分片,进行数据分享。 Redis 集群采用主从模型,提供复制和故障转移功能,来保证 Redis 集群的高可用。 根据 CAP 理论,Consistency、Availability、Partition

  • 我有一个redis集群,有主服务器、从服务器和3个哨兵服务器。主从映射到dns名称node1-redis-dev.com、node2-redis-dev.com。redis服务器版本为2.8 我在application.properties文件中包含以下内容。 但是,当我检查StringRedisTemplate时,在JedisConnectionFactory的hostName属性下,我看到的是