当前位置: 首页 > news >正文

石景山区城乡建设委员会网站百度人工电话

石景山区城乡建设委员会网站,百度人工电话,岳阳seo官网,做网站编辑集群脑裂导致数据丢失怎么办? 什么是脑裂? 先来理解集群的脑裂现象,这就好比一个人有两个大脑,那么到底受谁控制呢? 那么在 Redis 中,集群脑裂产生数据丢失的现象是怎样的呢? 在 Redis 主从架…

集群脑裂导致数据丢失怎么办?

什么是脑裂?

先来理解集群的脑裂现象,这就好比一个人有两个大脑,那么到底受谁控制呢?

那么在 Redis 中,集群脑裂产生数据丢失的现象是怎样的呢?

在 Redis 主从架构中,部署方式一般是「一主多从」,主节点提供写操作,从节点提供读操作。 如果主节点的网络突然发生了问题,它与所有的从节点都失联了,但是此时的主节点和客户端的网络是正常的,这个客户端并不知道 Redis 内部已经出现了问题,还在照样的向这个失联的主节点写数据(过程A),此时这些数据被旧主节点缓存到了缓冲区里,因为主从节点之间的网络问题,这些数据都是无法同步给从节点的。

这时,哨兵也发现主节点失联了,它就认为主节点挂了(但实际上主节点正常运行,只是网络出问题了),于是哨兵就会在「从节点」中选举出一个 leader 作为主节点,这时集群就有两个主节点了 —— 脑裂出现了

然后,网络突然好了,哨兵因为之前已经选举出一个新主节点了,它就会把旧主节点降级为从节点(A),然后从节点(A)会向新主节点请求数据同步,因为第一次同步是全量同步的方式,此时的从节点(A)会清空掉自己本地的数据,然后再做全量同步。所以,之前客户端在过程 A 写入的数据就会丢失了,也就是集群产生脑裂数据丢失的问题

总结一句话就是:由于网络问题,集群节点之间失去联系。主从数据不同步;重新平衡选举,产生两个主服务。等网络恢复,旧主节点会降级为从节点,再与新主节点进行同步复制的时候,由于会从节点会清空自己的缓冲区,所以导致之前客户端写入的数据丢失了。

解决方案

当主节点发现从节点下线或者通信超时的总数量小于阈值时,那么禁止主节点进行写数据,直接把错误返回给客户端。

在 Redis 的配置文件中有两个参数我们可以设置:

  • min-slaves-to-write x,主节点必须要有至少 x 个从节点连接,如果小于这个数,主节点会禁止写数据。
  • min-slaves-max-lag x,主从数据复制和同步的延迟不能超过 x 秒,如果超过,主节点会禁止写数据。

我们可以把 min-slaves-to-write 和 min-slaves-max-lag 这两个配置项搭配起来使用,分别给它们设置一定的阈值,假设为 N 和 T。

这两个配置项组合后的要求是,主库连接的从库中至少有 N 个从库,和主库进行数据复制时的 ACK 消息延迟不能超过 T 秒,否则,主库就不会再接收客户端的写请求了。

即使原主库是假故障,它在假故障期间也无法响应哨兵心跳,也不能和从库进行同步,自然也就无法和从库进行 ACK 确认了。这样一来,min-slaves-to-write 和 min-slaves-max-lag 的组合要求就无法得到满足,原主库就会被限制接收客户端写请求,客户端也就不能在原主库中写入新数据了

等到新主库上线时,就只有新主库能接收和处理客户端请求,此时,新写的数据会被直接写到新主库中。而原主库会被哨兵降为从库,即使它的数据被清空了,也不会有新数据丢失。

再来举个例子。

假设我们将 min-slaves-to-write 设置为 1,把 min-slaves-max-lag 设置为 12s,把哨兵的 down-after-milliseconds 设置为 10s,主库因为某些原因卡住了 15s,导致哨兵判断主库客观下线,开始进行主从切换。

同时,因为原主库卡住了 15s,没有一个从库能和原主库在 12s 内进行数据复制,原主库也无法接收客户端请求了。

这样一来,主从切换完成后,也只有新主库能接收请求,不会发生脑裂,也就不会发生数据丢失的问题了

http://www.dinnco.com/news/54044.html

相关文章:

  • 北京城建建设工程有限公司seo搜索引擎专员
  • php学多久可以做网站如何建立一个自己的网站啊
  • 怎么免费建设自己网站网站制作郑州
  • wordpress slider使用seo排名点击器
  • 怎么注册企业网站域名咨询网络服务商
  • 淘宝上做的网站可以优化吗淘宝关键词推广
  • 广告联盟建设个人网站百度链接提交
  • 计算机哪方面技术吃香电脑系统优化软件排行榜
  • 网站建设难点分析天津百度网站快速排名
  • 山西省住房和城乡建设厅网站自媒体平台注册官网下载
  • 虚拟主机解压wordpressseo网站优化论文
  • 杭州 做网站广告文案经典范例200字
  • 网站建设的客户需求调查与分析黑帽seo寄生虫
  • 最容易做的网站类型seo和sem的联系
  • 作文网站投稿重庆seo主管
  • 网上做网站赚钱吗目前引流最好的app
  • 给一个网站风格做定义武汉排名seo公司
  • 新的网站建设技术怎么建公司网站
  • 网站建设规划建议百度知道首页
  • 福建泉州曾明军的网站最好的营销策划公司
  • 网站建设图片怎么切武汉官网优化公司
  • 酒店网站建设方案怎么找精准客户资源
  • 公司网站谁负责做刚刚刚刚刚刚刚刚刚刚刚刚刚刚
  • 很简单的网站营销推广渠道
  • 网页设计与网站建设课程设计百度客服电话人工服务热线电话
  • 创意网站建设百度知道问答首页
  • 为什么要建设企业的微网站南昌seo推广
  • 中英文网站用同域名网络营销网
  • php仿百度网站源码2023疫情第三波爆发时间
  • 网站优化公司有哪些宁波优化网站厂家