Redis之集群脑裂

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

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

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

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

例如:

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

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

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