最近研究Raft协议,也阅读了go-raft的实现代码,虽然已经不维护了,但etcd, InfluxDB等项目前期都是使用的该库,还是很有工程上的参考价值。本篇针对论文与实现过程作简要的分析, 并分析了Raft的容错处理。
2016年08月13日
随着Raft一致性算法论文的发表,该协议在分布式领域的应用越来越广泛,大有取代Paxos协议之势。
两阶段提交是很常用的解决分布式事务问题的方式,它可以保证分布式事务的原子性(要么所有参与进程都提交事务、要么都取消事务)。在数据一致性环境下,其代表的含义是:要么所有备份数据同时更改某个数值,要么都不更改,以此来达到数据的强一致性。
深入理解分布式环境需要理解几个基本的概念CAP、BASE、ACID等。本篇以下记录了这几个基本概念及其关系。
在大数据时代,稍大型企业的数据量已经达到TB甚至PB级别,显然单机无法存储于处理如此规模的数据量。分布式数据的存储必然涉及到数据的分片,本篇分析了几种常用的数据分片模型。
最近工作中接触到分布式服务器,现针对学到的作简要概述, 分布式服务器之路刚起步。