分布式系统
yishuihan222222
“知识是免费的,经验是宝贵的”,不做知识的搬运工,专注于经验总结。
个人邮箱:yishuihan2@aliyun.com
展开
-
分布式系列:分布式系统之ACID和BASE理论
之前我们在《分布式系统之聊聊CAP理论》文中介绍了分布式系统的CAP理论,在实际场景下,一般P是肯定存在的,因此分布式策略一般就是变成了CP和AP选择。那么ACID和BASE理论又是什么呢?ACID由原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)组成。ACID理论是对事务特性的抽象和总结,一般可用理解为实现了ACID就实现了事务。分布式事务就是对某个操作要么所有节点都成功,要么失败。不允许存在部分成功、部分失败。常用的分布式事务原创 2020-11-19 14:30:23 · 2210 阅读 · 0 评论 -
分布式系列:分布式系统之聊聊选举算法
在分布式系统中采用的是主从架构,也就是有一个主节点,若干个从节点。主节点可以执行读写操作,从节点只执行读操作。采用这种一主多从的方案,可以有效保证了数据的一致性(哪怕不是强一致性,也能有效保证最终一致性)。在开源的Redis,MongoDB,Zookeeper等软件中也都采用了的选举算法,常用的选举算法有以下三种:Bully算法,Raft算法,ZAB算法。1、Bully算法Bully算法是一种简单直接的算法,因为它的选举原则是取ID的最大值作为主节点。在Bully算法中,有两种节点角色:普通节点和主节原创 2020-11-19 13:48:40 · 1690 阅读 · 0 评论 -
分布式系列:分布式系统中的互斥算法
“ 在单机中,多线程环境下为了解决竞争某共享资源的时候,一般采用加锁方式来解决互斥问题。而在分布式系统中,有哪些算法呢?”我们一起看看有哪些类型的分布式互斥算法。1、集中式算法在集中式算法中,一般需要一个协调者。每个程序在访问临界资源的时候,需要先给协调者发送一个请求。如果当前临界资源没有使用者,则授权该程序使用该资源。如果有程序使用该资源,则给后来请求该资源的请求加入等待队列。如果资源被释放,则立即通知等待队列里面的其他程序使用。这种算法叫做集中式算法,因为依赖于中央服务器。从上面过程可以看出.原创 2020-11-17 18:48:31 · 1126 阅读 · 2 评论 -
分布式系列:分布式系统之聊聊CAP理论
本文于2019年11月25日首发于公众号“码农的修炼之道”,欢迎关注!在分布式系统中有一个重要的理论,这就是CAP理论。其中C代表单词Consistency,一致性。是指所有节点在同一时刻的数据是相同的,比如更新数据库集群,更新成功后,该集群中的其他数据库也要数据一致。A代表单词Availability,可用性。是指系统提供的服务一直是可用状态,对于客户端的请求必须有响应。P代表Partition,分区容错性。在分布式系统中,遇到网络问题仍然可以响应用户的请求。一致性,可用性,分区容错性构成了分.原创 2020-11-17 18:25:47 · 408 阅读 · 0 评论