图文详解分布式一致性算法,这种方式你确定不搞一下?

本文深入探讨了分布式系统,从集中式与分布式对比开始,详细介绍了分布式事务、CAP理论、BASE理论以及二阶段提交(2PC)、三阶段提交(3PC)的优缺点。接着,文章讲解了Paxos和Raft一致性算法的流程,总结了分布式一致性算法的重要性和应用场景。
摘要由CSDN通过智能技术生成

集中式与分布式

集中式

就是将所有的业务都部署在一个中心主机(节点)上,所有的功能都由这个主机集中处理。

特点

部署结构简单、不需要考虑多个主机之间的分布式协作问题。

分布式

分布式系统:指将硬件或者软件组件部署在不同的网络计算机上,彼此之间仅仅通过消息传递进行通信和协调的系统。

特点

  1. 分布性:多台计算机可空间上随意分布,跨机房、跨城市都可以。

  2. 对等性:分布式系统中没有主/从之分,都是对等的节点或者服务。 副本:指分布式系统对数据或服务冗余,以此提供高可用。数据副本:是指在不同的节点上持久化一份数据,当某一个节点上存储的数据丢失时,可以从副本上读取到该数据,这是分布式系统数据丢失问题最为有效的手段。服务副本:指多个节点提供同样的服务,每个节点都有能力接收来自外部的请求并进行相应的处理。

  3. **并发性:**分布式系统中的多个节点,可能会并发地操作一些共享资源,诸如数据库或分布式存储等。

  4. **缺乏全局时钟:**一个典型的分布式系统是由一系列在空间上随意分布的进程组成,进程彼此之间通过消息进行通信。因此,无法判断两个事件谁先谁后。可使用逻辑时钟。

  5. **故障总是会发生:**除非需求指标允许,在系统设计时不能放过任何异常情况。如宕机、网络分区、网络超时等。

每一次分布式系统的请求与响应三态:成功,失败,超时。

超时情况:

  1. 没有成功发送到接收方,在发送过程中发生信息丢失。

  2. 成功发送到接收方,并成功处理,但返回给发送方过程中发生信息丢失。

所以需要有幂等。

分布式事务

分布式事务是指事务的参与者,支持事务的服务器,资源服务器以及事务管理器分别位于分布式系统的**不同节点之上。**通常一个分布式事务中会涉及对多个数据源或业务系统的操作。分布式事务也可以被定义为一种嵌套型的事务,同时也就具有了ACID事务的特性。

CAP理论

  • Consistency(一致性):数据一致更新,所有数据变动都是同步的(强一致性)。

  • Availability(可用性):好的响应性能

  • Partition tolerance(分区容错性) :可靠性

分区容错性:分布式系统在遇到任何网络分区故障的时候,仍然需要保证对外提供满足一致性和可用性的服务,除非是整个网络环境都发生了故障。

网络分区:是指在分布式系统中,不同的节点分布在不同的子网络(机房或异地网络等)中,由于一些特殊的原因导致这些子网络之间出现网络不连通的状况,但各个子网络的内部网络是正常的,从而导致整个网络的环境被切成了若干个孤立的区域。

image.png

定理:任何分布式系统只可同时满足二点,没法三者兼顾。

需要根据实际业务进行取舍。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值