求教 redis 集群的问题

2023-04-24 12:33:00 +08:00
 ymy3232
背景:
1. 一个独立的 redis 集群,暂定 5 台机器 15 个节点。
2. 存储的数据不重要但内存使用量大,数据由专门的服务定时写入,不担心数据丢失,所以也不会做主从。
3. 会使用抢占式实例(会被自动回收)来降低成本。
4. 业务客户端为 java-springredis-lettuce ,业务端对稳定性有高要求。

问题:
1. redis 集群能支持某一个或多个节点挂掉(不会恢复)的情况下正常提供服务(业务端不长时间超时、报错就行)吗?业务端访问挂掉的节点持有的 slot 会返回什么?
2. 这种场景下 redis 可以实现自动再分配 slot (异常节点踢出集群)吗?


有没有遇到过这种场景的大佬,帮忙看看这两个问题 redis 能解决嘛
1396 次点击
所在节点    Java
4 条回复
ymy3232
2023-04-24 14:22:00 +08:00
简单研究了下,应该可以通过 cluster-require-full-coverage 、cluster-allow-reads-when-down 两个参数来解决这个场景问题。
相关 issues:
https://github.com/redis/redis/issues/5890
https://github.com/redis/redis/issues/7142
https://github.com/redis/redis/pull/6144
https://github.com/redis/redis-doc/pull/1180
zhangqian99
2023-04-24 17:23:39 +08:00
redis 集群本身就支持主从复制和主节点的自动故障转移;当任一节点发生故障时,集群仍然可以对外提供服务
zsj1029
2023-04-24 22:05:45 +08:00
购买现成的集群服务,按量付费会比自己部署便宜吗
ymy3232
2023-04-25 09:24:26 +08:00
@zsj1029 按量付费是最贵的,并且所有云厂商的数据库服务价格都比服务器价格贵几倍

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/935018

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX