分布式原理
分布式由来¶
将计算或数据拆分,再分布到不同的节点计算和存储,从而提高系统的性能。
系统垂直扩展¶
有天花板,边际成本大。
系统水平扩展¶
如何将系统部署到到不同的节点上去?
系统垂直拆分¶
垂直拆分之后各个节点组成的就是一个集群
。
系统水平拆分¶
水平拆分各个节点就是分布式
。
分布式目标¶
- 透明性,包括访问、位置、并发、复制、故障、移动、性能、伸缩等透明性
- 开放性,通用的协议和使用方式
- 可伸缩性
- 高性能
- 可靠性
分布式挑战¶
分布式系统相对于集中式系统,有两个不确定性因素:节点故障和不可靠的网络。
分布式思想¶
分布式理论¶
CAP 理论¶
分布式系统的三个特性 Consistency(一致性)、Availability(可用性)、Partition tolerance(分区容错性),最多只能同时满足其中两个,三者不可兼得。
BASE 理论¶
BASE模型全称是Basically Available(基本可用)、Soft-state(软状态/柔性事务)、Eventually Consistent(最终一致性)。绝大部分分布式系统,实现分区容忍性是基本要求,因此要平衡一致性和可用性。BASE强调牺牲高一致性,获得可用性。允许数据在一段时间内不一致,只要保证最终一致就可以了。
最后更新: September 10, 2023