
分布式
分布式
zane197
这个作者很懒,什么都没留下…
展开
-
Paxos算法
本篇文章主要主要是对paxos的算法思想的学习,是一片学习笔记,文章内容主要来自于极客时间分布式系统原理与实战课程中关于paxos的相关内容。Basic Paxos 中,有提议者(Proposer)、接受者(Acceptor)、学习者(Learner)Proposer : 提议一个值,用于投票表决。绝大多数场景中,集群中收到客户端请求的节点,才是提议者. 该角色代表的是接入和协调功能,收到客户端请求后,发起二阶段提交,进行共识协商;Acceptor: 对每个提议的值进行投票,并存储接受的值,比如 A原创 2020-09-13 21:00:20 · 325 阅读 · 0 评论 -
分布式理论知识学习(拜占庭将军,cap理论,base理论)
前两天的高德交叉面的时候,面试官把我PUA了,其中问到为啥cap理论中一般只能实现两个?这让我这捉襟见肘的脑容量瞬间爆炸了,赶紧在极客时间上面搞了个分布式理论算法原理与实践课程,来学习一下吧,下面的内容就是学习该课程的相关笔记。分布式系统里,最重要的事情,就是如何选择或设计适合的算法,解决一致性和可用性相关的问题了。一、理论篇1. 拜占庭将军问题拜占庭帝国想要进攻一个强大的敌人,为此派出了10支军队去包围这个敌人。这个敌人虽不比拜占庭帝国,但也足以抵御5支常规拜占庭军队的同时袭击。基于一些原因,这原创 2020-09-12 22:08:13 · 1181 阅读 · 0 评论 -
分布式事务
分布式事务一、什么是分布式事务二、基于 XA 协议的二阶段提交方法一、什么是分布式事务事务,其实是包含一系列操作的、一个有边界的工作序列,有明确的开始和结束标志,且要么被完全执行,要么完全失败,即 all or nothing。分布式事务,就是在分布式系统中运行的事务,由多个本地事务组合而成。在分布式场景下,对事务的处理操作可能来自不同的机器,甚至是来自不同的操作系统。分布式事务是多个事务的组合,那么事务的特征 ACID,也是分布式事务的基本特征。分布式事务主要是解决在分布式环境下,组合事务的一致性原创 2020-08-31 20:56:09 · 258 阅读 · 0 评论 -
分布式一致性协议与算法
分布式选举算法一、Bully算法二、 Raft 算法三、ZAB 算法为什么“多数派”选主算法通常采用奇数节点,而不是偶数节点呢?分布式选举是为了保证数据的一致性。一、Bully算法在 Bully 算法中,节点的角色有两种:普通节点和主节点。初始化时,所有节点都是平等的,都是普通节点,并且都有成为主的权利。但是,当选主成功后,有且仅有一个节点成为主节点,其他所有节点都是普通节点。当且仅当主节点故障或与其他节点失去联系后,才会重新选主。Bully 算法在选举过程中,需要用到以下 3 种消息:Elec原创 2020-08-31 19:56:18 · 945 阅读 · 0 评论 -
分布式协调与同步算法
分布式协调与同步算法分布式技术的发展:分布式系统的指标集中式算法分布式算法令牌环算法分布式技术的发展:单机模式所有应用程序和数据均部署在一台电脑或服务器上,由一台计算机完成所有的处理。模式的好处是功能、代码和数据集中,便于维护、管理和执行。但是CPU 和内存等硬件的性能将成为单机模式的瓶颈,会出现性能受限、单点失效问题数据并行或数据分布式并行计算采用消息共享模式使用多台计算机并行运行或执行多项任务,核心原理是每台计算机上执行相同的程序,将数据进行拆分放到不同的计算机上进行计算。好处是,可以原创 2020-08-30 22:05:28 · 2250 阅读 · 0 评论 -
限流算法简单记录
限流算法介绍限流算法实现常见的限流算法有:计数器、令牌桶、漏桶。计数器算法采用计数器实现限流主要是限制一秒钟的能够通过的请求数,比如限流qps为100,算法的实现思路就是从第一个请求进来开始计时,在接下去的1s内,每来一个请求,就把计数加1,如果累加的数字达到了100,那么后续的请求就会被全部拒绝。等到1s结束后,把计数恢复成0,重新开始计数。具体的实现可以是这样的:对于每次服务调用,可以通过AtomicLong#incrementAndGet()方法来给计数器加1并返回最新值,通过这个最新值原创 2020-08-27 19:12:56 · 166 阅读 · 0 评论