Redis之集群脑裂

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

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

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

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

例如:

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

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

相关推荐
LcVong几秒前
MySQL 5.2/5.7 开启Binlog日志详细步骤(附验证+查看+恢复)
数据库·mysql·adb
FL4m3Y4n18 分钟前
MySQL缓存策略
数据库·mysql·缓存
wsx_iot20 分钟前
TDengine学习
数据库·学习·tdengine
不吃香菜的小趴菜40 分钟前
mysql数据库打包与导入
数据库·mysql
野犬寒鸦42 分钟前
Redis复习记录day1
服务器·开发语言·数据库·redis·缓存
njidf43 分钟前
实战:用Python开发一个简单的区块链
jvm·数据库·python
Rick19931 小时前
慢SQL优化
数据库·python·sql
IvorySQL1 小时前
速抢!HOW 2026 早鸟票最后 1 天,解锁开源数据库盛会全亮点
数据库·postgresql·开源
IvorySQL1 小时前
PostgreSQL 技术日报 (3月30日)|内核补丁密集更新,REPACK 并发与索引预读取进展
数据库·postgresql·开源
Nyarlathotep01131 小时前
Redis的内存回收和对象共享
redis·后端