1、Paxos算法的应用 Paxos算法及变种算法在分布式系统中应用广泛。 基于Paxos算法的变种有:ZAB、Raft 例如: ? Zookeeper 中的ZAB协议也是Paxos算法的变种。Zookeeper通过ZAB协议实现数据一致性,以提供数据一致
分类:
编程语言 时间:
2018-03-13 23:49:32
阅读次数:
270
在CAP理论中,C代表一致性,A代表可用性(在一定时间内,用户的请求都会得到应答),P代表分区容错。这里分区容错到底是指数据上的多个备份还是说其它的 ? 我感觉分布式系统中,CAP理论应该是C和A存在不可同时满足, 既要保证高可用,又要保证强一致性,因为多个节点之间存在数据复制,所以要么保证强一致性 ...
分类:
其他好文 时间:
2018-02-28 01:09:09
阅读次数:
132
Master-Slave: 读写分离,save复制master的数据。同步复制:保证了强一致性但是会影响高可用性,因为写入的时候要保证slave都写入了才能返回告诉生产者数据写入成功,如果slave过多就是时间过长。异步复制:数据写入master之后不要求所有的slave都写入就返回生产者写入成功,... ...
分类:
其他好文 时间:
2018-01-21 17:31:37
阅读次数:
146
首先什么是一致性? 一致性就是分布式系统中相互独立多个节点就某个值达成一致。 具体可分为强一致性和弱一致性。 强一致性:在任意时刻,所有节点中的数据是一样的。同一时间点,你在节点A中获取到key1的值与在节点B中获取到key1的值应该都是一样的。 弱一致性:不保证任意时刻所有节点数据一样,有很多不同 ...
分类:
其他好文 时间:
2017-11-12 13:32:21
阅读次数:
152
思考这个问题的初衷,是有一次给朋友转账,结果我的钱被扣了,朋友没收到钱。而我之前一直认为银行转账一定是由事务保证强一致性的,于是学习、总结了一下分布式事务的各种理论、方法。 事务是一个非常广义的词汇,各行各业解读都不一样。对于程序员,事务等价于Transaction,是指一组连续的操作,这些操作组合 ...
分类:
其他好文 时间:
2017-10-22 11:00:53
阅读次数:
146
关于分布式事务、两阶段提交协议、三阶提交协议http://www.hollischuang.com/archives/681碧桂园旺生活平台强一致性分布式事务,是基于三阶段提交+本地事务补偿机制来实现https://github.com/yu199195/happylifeplat-transaction
分类:
其他好文 时间:
2017-09-04 14:49:21
阅读次数:
126
Ceph作为一个高可用和强一致性的软件定义存储实现,去使用它非常重要的就是了解其内部的IO路径和存储实现。这篇文章主要介绍在IO路径中最底层的ObjectStore的实现之一FileStore。 ObjectStore ObjectStore是Ceph OSD中最重要的概念之一,它封装了所有对底层存 ...
分类:
其他好文 时间:
2017-08-27 11:58:00
阅读次数:
215
第一章HBase简介 1. HBase即hadoop数据库,HBase是一个分布式的、持久的、强一致性的存储系统,具有近似最优的写性能和出色的读性能。 2. HBase并不是一个列式存储的数据库,但它利用了磁盘上的列式存储格式。传统的列式存储数据库适合实时存取数据的场景,HBase适合键值对的数据存 ...
分类:
其他好文 时间:
2017-08-26 23:29:59
阅读次数:
244
场景:需要在主机写入之后,保证在备机一定能够读取到已经写入的数据,也就是需要主从架构下的强一致性。 主机与备机之间的物理延迟是不可控的,也是无法避免的。但是如果仅仅需要满足这种强一致性,是相对简单的事情:只需要在主机写入时,确认更新已经同步到备机之后,再返回写操作成功即可。主从数据库支持这种完全的同 ...
分类:
数据库 时间:
2017-08-23 10:31:27
阅读次数:
158
CAP原理指的是,这三个要素最多只能同时实现两点,不可能三者兼顾。因此在进行分布式架构设计时,必须做出取舍。而对于分布式数据系统,分区容忍性是基本要求,否则就失去了价值。因此设计分布式数据系统,就是在一致性和可用性之间取一个平衡。对于大多数web应用,其实并不需要强一致性,因此牺牲一致性而换取高可用 ...
分类:
其他好文 时间:
2017-08-20 18:22:40
阅读次数:
173