目录

文章目录

  • 目录
  • 分布式一致性难题
  • 分布式一致性算法
    • Paxos 算法
    • Raft 算法
    • Quorum NWR 算法
  • 分布式一致性的实现方式
    • 主动复制
    • 被动复制
    • 同步复制
    • 异步复制

分布式一致性难题

在分布式系统中要解决的一个重要问题就是数据的复制。

分布式系统对于数据的复制需求一般都来自于以下 2 个原因:

  1. 为了增加系统的可用性,以防止单点故障引起的系统不可用;
  2. 提高系统的整体性能,通过负载均衡技术,能够让分布在不同地方的数据副本都能够为用户提供服务;

数据复制在可用性和性能方面给分布式系统带来的巨大好处是不言而喻的,然而数据复制所带来的一致性挑战,也是每一个系统研发人员不得不面对的。

所谓分布式一致性难题,是指在分布式系统中引入数据复制机制之后,不同数据节点之间可能出现的,并无法依靠计算机应用程序自身解决的数据不一致的情况。

简单讲,数据一致性就是指

架构师之路 — 分布式系统 — 分布式一致性难题相关推荐

  1. 架构师之路 — 分布式系统 — 分布式事务难题

    目录 文章目录 目录 分布式事务难题 分布式事务的实现方式 2PC 2PC 阶段一,执行事务 2PC 阶段二:提交事务 2PC 的 4 个缺点 3PC 3PC 第一阶段 can commit 3PC ...

  2. 视频教程-Java架构师之路:分布式面试题-Java

    Java架构师之路:分布式面试题 动力节点王勇老师,CCTV<影响力对话>栏目特约嘉宾,Java培训知名讲师,中国Java培训领军人物,北京动力节点创始人,董事长兼CEO.1995年接触软 ...

  3. 架构师之路 — 分布式系统 — CAP 定理

    目录 文章目录 目录 CAP 定理 C(Consistency,一致性) A(Availability,可用性) P(Partition tolerance,分区容错性) CAP 的组合 CP(con ...

  4. 架构师之路 — 分布式系统 — RPC 远程过程调用

    目录 文章目录 目录 RPC RPC 架构 成熟的开演 RPC 框架 RPC RPC(Remote Procedure Call,远程过程调用)是一种计算机程序通信方式,允许运行于一台计算机中的程序调 ...

  5. 架构师之路 — 分布式系统 — gRPC 谷歌远程过程调用

    目录 文章目录 目录 gRPC gRPC 的调用架构 gRPC 的分层架构 gRPC 的应用场景 gRPC vs. REST gRPC gRPC(Google Remote Procedure Cal ...

  6. 架构师之路 — 分布式系统 — gRPC 的 4 种服务定义及调用方式

    目录 文章目录 目录 gRPC 的服务定义 gRPC 的 4 种服务定义方式 单项 RPC 调用 服务端流式 RPC 调用 客户端流式 RPC 调用 双向流式 RPC 调用 gRPC 的服务定义 与其 ...

  7. 架构师之路 — 分布式系统 — Protocol Buffers 序列化协议

    目录 文章目录 目录 Protocol Buffers 序列化协议 定义数据结构 序列化传输 Protocol Buffers 序列化协议 Protocol Buffers 是一种高性能的.语言无关的 ...

  8. 架构师之路-2018

    架构师之路-2018 分布式架构 架构,为什么要做服务化? 架构,如何进行容量设计? 架构,关于负载均衡的一切 架构,反向代理与DNS轮询 架构,过载保护与异构服务器负载均衡 架构,MySQL主从延时 ...

  9. 分布式ID生成器 | 架构师之路

    一.需求缘起 几乎所有的业务系统,都有生成一个唯一记录标识的需求,例如: 消息标识:message-id 订单标识:order-id 帖子标识:tiezi-id 这个记录标识往往就是数据库中的主键,数 ...

最新文章

  1. 透過proxychains讓不支持代理的程序通過代理上網
  2. Android LayoutInflater 源码解析
  3. 不快乐工作场所的生存法则
  4. LSMW批处理使用方法(01)_总述及界面说明
  5. 案例十:输入一批整数,输出其中的最大值和最小值,输入数字0时结束循环。...
  6. SAP Fiori Elements遇到问题时,该如何调试?
  7. Handler post用法整理
  8. 华尔街日报评2010科技创新奖
  9. matlab 神经网络工具箱的实用
  10. 【转】OCaml基础知识
  11. 【整理】Ubuntu10.04下安装Altera9.1套件
  12. [Python从零到壹] 四十三.图像增强及运算篇之图像点运算和图像灰度化处理
  13. iOS 在CollectionView上做展开收起动画
  14. 小米平板4刷 linux,小米平板4_刷开发版_获取root
  15. H3C防火墙-安全域
  16. python爬虫,python学习,如何用python爬取视频资源
  17. 不同几种剔除(Culling)在渲染流程中的使用总结
  18. 几款常用装机检测软件
  19. ITK-图像主轴分析
  20. 【IntelliJ IDEA】如何汉化成简体中文

热门文章

  1. Shellcode开发辅助工具shellnoob
  2. Visual Studio找不到adb.exe错误解决
  3. python 播放视频 ftp_利用 Python 实现文件自动备份到 ftp 服务器
  4. python pypdf2另存为图片_最全总结!聊聊 Python 操作PDF的几种方法
  5. php中表头不跟着滑动,JS实现table表格固定表头且表头随横向滚动而滚动
  6. java向上造型的优点_老榆木家具适合什么装修风格?老榆木家具有哪些优点
  7. spring用xml还是java_Spring中如何混用XML与Java装配方式
  8. 研究者设计了Fastball任务早期诊断阿尔茨海默病
  9. java对象头_浅谈java对象结构 对象头 Markword
  10. 马斯克刚失了一枚大火箭!