Redis之集群脑裂

redis集群没有过半机制会有脑裂问题,网络分区导致脑裂后多个主节点对外提供写服务,一旦网络分区恢复,会将其中一个主节点变为从节点,这时会有大量数据丢失。

规避方法可以在redis配置里加上参数(这种方法不可能百分百避免数据丢失,参考集群leader选举机制):

java 复制代码
min‐replicas‐to‐write 1

写数据成功最少同步的slave数量,这个数量可以模仿半数机制配置。

例如:

集群总共三个节点可以配置1,加上leader就是2,超过了半数

这个配置在一定程度上会影响集群的可用性,比如slave要是少于1个,这个集群就算leader正常也不能提供服务了,需要具体场景权衡选择。

相关推荐
不想看见4042 分钟前
Qt 框架中的信号与槽机制【详解】
服务器·数据库·qt
白鸽梦游指南10 分钟前
redis-cluster集群实验及解析
数据库·redis·缓存
阿贵---14 分钟前
构建一个基于命令行的待办事项应用
jvm·数据库·python
2301_8153577020 分钟前
Spring 声明式事务:删除操作的事务管理全解与最佳实践
数据库
小李来了!22 分钟前
Oracle、MySQL、SQL server介绍及有何区别
数据库·mysql·oracle·sqlserver
mcooiedo26 分钟前
Mysql ONLY_FULL_GROUP_BY模式详解、group by非查询字段报错
数据库·mysql
柒.梧.27 分钟前
新手入门:NoSQL与Redis核心基础解析
数据库·redis·nosql
qq_4160187227 分钟前
持续集成/持续部署(CI/CD) for Python
jvm·数据库·python
执笔画情ora28 分钟前
PG/mysql/oracle--- 长事务对后续事务影响分析
数据库·mysql·oracle
qq_2837200530 分钟前
nestjs实战(六):诺依Nest.js + MySQL 项目改造为兼容达梦8数据库详细教程
javascript·数据库·mysql·达梦·nest.js·诺依