苏中建设集团网站网址东莞住房建设网站的网这个可以为一个的,例如:如何找到苏中建设集团的官方网站和东莞住房建设网站的相关信息?
摘要:苏中建设集团网站网址,东莞住房建设网站的网,南通模板建站多少钱,商城网站备案能通过吗这是一段关于一致性,事务以及两阶段提交的历史的描述阅读关于一致性的文献可能会有些困难,因为&am
苏中建设集团网站网址,东莞住房建设网站的网,南通模板建站多少钱,商城网站备案能通过吗这是一段关于一致性#xff0c;事务以及两阶段提交的历史的描述阅读关于一致性的文献可能会有些困难#xff0c;因为#xff1a; 各种用语在不断的演化着(比如一致性consensus最初叫做协商agreement)#xff1b; 各种研究成果并不是以一种逻辑性的顺序产生…这是一段关于一致性事务以及两阶段提交的历史的描述阅读关于一致性的文献可能会有些困难因为 各种用语在不断的演化着(比如一致性consensus最初叫做协商agreement) 各种研究成果并不是以一种逻辑性的顺序产生出来 同时描述整个分布式算法的框架与这些研究工作又是平行地演化着 此外除了Lynch的《分布式算法》外很少有书籍涉及到这个主题下面涉及的这些论文不是按照它们的发表顺序来进行介绍而是尽量以最容易理解的方式来组织所知道的第一个一致性问题实例应该是Lamport的“Time, Clocks and the Ordering of Events in a Distributed System” (1978),尽管它并没有明确的提出一致性(consensus)或者协商(agreement)的概念在这篇论文里Lamport讨论了消息如何在有限的时间内在不同处理器之间传输同时还利用爱因斯坦的狭义相对论进行了有趣的比喻早在1978年Lamport就采用时空图给出了一个完整的全方位的分析关键问题在于在一个分布式系统中你无法判断事件A是否发生在事件B之前除非A和B存在某种依赖关系每个观察者都可能看到不同的事件发生序列除非这些事件相互之间存在依赖关系即分布式系统中的事件仅仅是部分有序的Lamport定义了一个称为”发生在前”的关系和操作符然后又给出了一个算法用来确定分布式系统中的事件的全序关系这样所有的进程就可以看到与其他进程一样的事件排序同时Lamport还提出了分布式状态机的概念 让一组确定性状态机从相同的初始状态开始之后保证它们以相同的顺序处理相同的消息 这样就可以保证每个状态机都是其他状态机的一个副本 关键的问题就是让每个状态机在“哪个消息是下一个需要处理的消息”这个问题上达成一致这就是一个一致性问题 这就是一个创建事件排列的算法所需要做的提供一个关于消息传输顺序的统一约定 然而这个系统并不是容错的如果一个进程出错其他进程将无限等待下去直到它恢复大概在这篇论文发表的同一时间JimGray在“Notes on Database Operating Systems” (1979)中描述了两阶段提交(2PC)不幸的是如果事务管理器在某个错误的时间点失败的话2PC就会被阻塞Dale Skeen在“NonBlocking Commit Protocols” (1981)中指出对于一个分布式系统需要3阶段的提交算法来避免2PC中的阻塞问题问题关键在于找到一个好的3PC算法这已花费了将近25年Fischer, Lynch 和 Paterson在“Impossibility of distributed consensus with one faulty process” (1985)中指出对于一个异步系统来说即使只有一个进程出错分布式一致性也是不可能达到的这就是著名的FLP结论直到此时consensus才成为“让一系列处理器在一个value上达成共识的”这一问题的叫法在一个具有完美网络(所有的消息都会被传输按序到达不会重复)的异步系统(处理器以任意的速率运行处理器间的消息传输可能花费任意时长)中只要有一个出错进程(即使只有一次故障)分布式一致性就是不可能的问题的核心在于你无法区分一个进程到底是终止了还是正在以极低的速度执行这使得在异步系统中的错误处理几乎是不可能的此外这篇论文的重要性还在于它展示了如何证明某些事情是不可能的首先证明解决该问题的算法都必须满足一些属性然后证明满足这些属性是不可能的比如通过反证法证明(这种方法曾经被图灵用于停机问题的证明中)此时人们意识到一个分布式算法具有两个属性安全性(safety)和活性(liveness)安全性意味着坏的事情不会发生而活性意味着某些好的事情最终一定会发生2PC作为一个一致性算法用来保证所有的进程在“事务要么提交要么失败退出”上达成一致2PC是安全的不会有坏的数据被写入到数据库但是它的活性并不好如果事务管理器在一个错误的点上失败那么系统会阻塞也是在此时人们意识到可以将一个分布式系统分为同步的(进程以已知的速率运行消息会在限制的时间内传输)和异步的(进程以未知的任意的速率运行消息的传输时间没有上界)异步与同步相比是一种更通用的情况一个适用于异步系统的算法也能被用于同步系统但是反过来并不成立你可以将同步系统看做是异步系统的一个特殊情况只是消息传输时间恰
