gpt4 book ai didi

redis - 如果初始连接的集群节点死亡,ioredis 客户端能否继续工作?

转载 作者:可可西里 更新时间:2023-11-01 11:12:57 24 4
gpt4 key购买 nike

当使用 ioredis ( https://github.com/luin/ioredis ) 连接到 redis 集群时,您只需要指定一个节点,例如三节点集群

127.0.0.1:7000127.0.0.1:7001127.0.0.1:7002

您可以简单地连接:

new Redis.Cluster([{
port: 7000,
host: '127.0.0.1'
}])

如果 :7000 节点死了,而您用另一个节点替换它,则执行如下操作:

redis-trib.rb call 127.0.0.1:7001 cluster forget [node_id of :7000]
redis-trib.rb add-node 127.0.0.1:7003 127.0.0.1:7001
redis-trib.rb fix 127.0.0.1:7001

ioredis 是否能够继续工作(接受来自 :7000 的数据丢失),它是否需要能够再次联系 127.0.0.1:7000 还是仅用于初始连接?

从我的实验来看,这种情况似乎确实有效,我的问题的答案是肯定的,但我想检查一下这是否是预期的和受支持的情况。

最佳答案

当连接到集群时,ioredis 会向 :7000 询问集群的节点列表,之后 ioredis 能够发现新节点并处理故障转移。所以,如果 :7000 在获取节点列表后 结束,答案是肯定的。

关于redis - 如果初始连接的集群节点死亡,ioredis 客户端能否继续工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46586053/

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