a)   故障检测

首先明确心跳是不是和用来进行故障检测的。在系统运行中可能出现各种错误,机器A收不到机器B的心跳包并不能认为B发生了故障并停止了服务,比如A和B之间的网络发生了故障,或者B过于繁忙无法响应A的心跳包。这就可能导致不一致问题的发生。

故障检测的关键在于两台机器对“机器B是否被认为发生故障且停止服务达成一致”,然而异步网络中的多台机器无法达成一致,但是实践中机器之间会进行时钟同步,我们假设两台机器之间本地时钟相差不大(比如小于0.5s),我们可以通过租约(Lease)机制进行故障检测。

租约机制是带有超时时间的授权,B从A处获得租约,只有在租约有效期内B对外提供服务,正常情况下,B不断向A请求租约以保证提供服务,但是当发生故障时,B无法获得新的租约,也就不能对外提供服务了。B上的数据可以进行迁移。但是考虑到本地时钟不一致的问题,A可以在租约超时时间+1s(提前量)时再认为B已经发生故障,

b)  故障恢复

对于单层结构,总控节点选择其他最新的副本代替故障节点上的副本对外提供服务,在等待一定时间后(比如1h),总控节点认为该节点永久下线,进行副本复制以保证每一个数据分片的副本数保持在一定数目。

对于双层结构,存储和服务分开,每个数据分片同一时间只有一个节点对外提供服务。当一个节点出现故障时,总控节点选择另外一个节点,加载A的服务并从底层分布式文件系统中加载A的数据到内存中。

总控节点也可能发生故障,为此,总控节点的状态会实时同步到备机,故障发生时,通过某个外部的高可用服务选举一个备机为总控节点。

欢迎扫描二维码关注微信公众号 深度学习与数学   [每天获取免费的大数据、AI等相关的学习资源、经典和最新的深度学习相关的论文研读,算法和其他互联网技能的学习,概率论、线性代数等高等数学知识的回顾]

分布式存储系统学习笔记(一)—什么是分布式系统(4)—容错机制相关推荐

  1. 大规模分布式存储系统 - 读书笔记

    文章目录 大规模分布式存储系统(原理解析与架构实战OceanBase) 第1章 概述 1.1 分布式存储概述 1.2 分布式存储分类 第一篇 基础篇 第2章 单机存储系统 2.1 硬件基础 2.1.1 ...

  2. HBase分布式存储系统学习

    简介: hadoop的数据库,根据谷歌的bigtable论文实现的 分布式的可扩展的大数据存储技术 随机访问 实时读写海量数据 存储数'十亿行 百万例'的数据 高性能.高可靠.面向列.可伸缩的分布式存 ...

  3. 分布式文件与分布式存储系统学习总结(持续更新)

    存储系统知识 Write Ahead Log 问题引入 存储系统在运行过程中,每时每刻都在发生数据更新.如对文件数据的CRUD. 对于中心控制节点来说,这些都会涉及到metadata的更新操作. 为了 ...

  4. 大数据存储系统学习笔记(一)

    1. NFS 设计目标:服务器出现故障,可以简单快速地恢复 NFS Server不保持任何状态,每个操作都是无状态的 如果NFS崩了,只用重启,什么额外操作都不用,因为每个操作无状态 NFSv2 对于 ...

  5. torch分布式训练学习笔记

    分布式通讯包 - torch.distributed 基本 初始化 TCP初始化 共享文件系统初始化 环境变量初始化 组 点对点通信 集体功能 torch.distributed提供了一种类似MPI的 ...

  6. 分布式协议学习笔记(一) Raft 选举

    Raft官网 官方可视化动画1 官方可视化动画2 论文中文翻译 论文英文地址 感觉作为paxos的升级精简版 Raft在设计之初就以容易理解为目标 看完资料 脑海里都有了大概的轮廓. 有了这些详细的资 ...

  7. spring分布式事务学习笔记(2)

    此文已由作者夏昀授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. Model类如下:package com.xy.model 1 package com.xy.model;2 ...

  8. Nuth | Hadoop完全分布式运行 学习笔记

    原始URL: hdfs://10.66.27.181:9000/user/hadoop/urldir  url.txt -->http://blog.tianya.cn hdfs://10.66 ...

  9. 第一行代码学习笔记第五章——详解广播机制

    知识点目录 5.1 广播机制 5.2 接收系统广播 * 5.2.1 动态注册监听网络变化 * 5.2.2 静态注册实现开机广播 5.3 发送自定义广播 * 5.3.1 发送标准广播 * 5.3.2 发 ...

  10. Hadoop2.6.0学习笔记(九)SPOF解决方案Quorum机制

    鲁春利的工作笔记,谁说程序员不能有文艺范? 以下内容转载自:Eric雪菲的Quorum机制漫谈和junhua3344的Quorum机制 Quorum这个词的念作"科瑞姆",字面意思 ...

最新文章

  1. LeetCode实战:旋转链表
  2. 一个在windowsXP启动linux as(grub引导)的简单方法
  3. 反弹c语言作业,C语言实现反弹球小游戏
  4. opencv中的push_back()函数
  5. 掌握 需求过程阅读笔记06
  6. [译] 你是如何拆分组件的?
  7. 消除代码中的坏味道,编写高质量代码
  8. html5新增标签与删除标签,HTML5新增/删除标签
  9. CentOS/Redhat:手动配置IP地址(命令和图形界面)
  10. python爬虫课程大纲_马哥2018python全栈+爬虫+高端自动化课程大纲
  11. 史上最全的工控类软件链接 快收藏备用吧
  12. 程序人生-Hello的 P2P
  13. Linux命令:查看服务器IP地址
  14. 【编程题】【Scratch三级】2021.06 躲球游戏
  15. 利用Dockerfile制作自己的Docker镜像
  16. Guitar Pro 7吉他谱教程——删除小节
  17. EduSoho开源网校系统源码(附安装教程、下载安装包),支持开源免费下载
  18. 淘口令解析api接口/淘口令解密还原api接口/淘口令短链接搜索商品详情接口,API接口获取方案
  19. 客户端和服务器之间的信息结构,客户端与服务器之间的通信过程
  20. 【文献阅读2】Cytological and transcriptome analyses reveal abrupt gene expression for meiosis and sacchari

热门文章

  1. 测试Leader应该做哪些事
  2. 关于BDC、SSP搜索相关解决方案 的数据结构
  3. SqlMapConfig.xml 的配置
  4. 转载--Python random模块(获取随机数)常用方法和使用例子
  5. Python学习之路day3-文件操作
  6. 调用腾讯的API接口
  7. 0x0 Transaction mined but execution failed
  8. 【转】uni-app在手持PDA上的激光扫码完美解决方案
  9. vmware16安装centos7超详细说明
  10. 倒置链表(递归方式)