分布式系统
xk_一步一步来
一步一步
展开
-
Merkle Tree(默克尔树)算法解析
Merkle Tree概念 Merkle Tree,通常也被称作Hash Tree,顾名思义,就是存储hash值的一棵树。Merkle树的叶子是数据块(例如,文件或者文件的集合)的hash值。非叶节点是其对应子节点串联字符串的hash。[1]1、HashHash是一个把任意长度的数据映射成固定长度数据的函数[2]。例如,对于数据完整性校验,最简单的方法是对整个数据做Hash运算得到固定长度...转载 2018-11-20 23:09:13 · 719 阅读 · 0 评论 -
raft原理的动画演示
转自:https://blog.csdn.net/zl1zl2zl3/article/details/79621937 过去, Paxos一直是分布式协议的标准,但是Paxos难于理解,更难以实现,Google的分布式锁系统Chubby作为Paxos实现曾经遭遇到很多坑。 来自Stanford的新的分布式协议研究称为Raft,它是一个为真实世界应用建立的协议,主要注重...转载 2018-11-18 00:30:19 · 182 阅读 · 0 评论 -
Raft一致性算法
Why Not PaxosPaxos算法是莱斯利·兰伯特(LeslieLamport,就是 LaTeX 中的”La”,此人现在在微软研究院)于1990年提出的一种基于消息传递的一致性算法。由于算法难以理解起初并没有引起人们的重视,使Lamport在八年后1998年重新发表到ACM Transactions on Computer Systems上(The Part-Time...转载 2018-11-18 13:00:35 · 211 阅读 · 0 评论 -
反向代理和CDN
CDN是内容分发网络(Content Delivery Network)。是为了解决用户请求响应过慢的问题。比如用户在黑龙江,服务器在海南,用户请求的速度可能受距离、带宽的影响。CDN将几台机器分发在全国各地,用户发出的请求会选择就近的CDN服务器进行处理。CDN简单的来说就是存储一些静态文件的一台或多台服务器,通过复制,缓存主服务器等方式,将文件保存其中。反向代理一般就是指Nginx,是在...转载 2018-12-08 13:04:50 · 886 阅读 · 1 评论 -
大型分布式网站术语分析
转自:https://blog.csdn.net/u013256816/article/details/515635641. I/O优化增加缓存,减少磁盘的访问次数。优化磁盘的管理系统,设计最优的磁盘方式策略,以及磁盘的寻址策略,这是在底层操作系统层面考虑的。设计合理的磁盘存储数据块,以及访问这些数据库的策略,这是在应用层面考虑的。例如,我们可以给存放的数据设计索引,通过寻址索引来加快和...转载 2019-01-05 16:28:47 · 111 阅读 · 0 评论 -
分布式概述与从ACID到CAP到BASE
序本文主要讲述分布式系统开发的一些相关理论基础。一、ACID事务的四个特征:1、Atomic原子性事务必须是一个原子的操作序列单元,事务中包含的各项操作在一次执行过程中,要么全部执行成功,要么全部不执行,任何一项失败,整个事务回滚,只有全部都执行成功,整个事务才算成功。2、Consistency一致性事务的执行不能破坏数据库数据的完整性和一致性,事务在执行之前和之后,数据库都必须处于...转载 2019-04-04 10:51:47 · 123 阅读 · 0 评论 -
分布式CAP定理,为什么不能同时满足三个特性?
转自:https://blog.csdn.net/yeyazhishang/article/details/80758354在弄清楚这个问题之前,我们先了解一下什么是分布式的CAP定理。根据百度百科的定义,CAP定理又称CAP原则,指的是在一个分布式系统中,Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),最多只能同时...转载 2019-04-04 10:56:49 · 1343 阅读 · 0 评论 -
分布式涉及到的中间知识点
分布式系统的通信:https://www.cnblogs.com/walkinhalo/p/9651065.html通信是分布式架构的一个基本问题, 通信是基于通信协议, 通过网络IO来实现的, 基本的通信协议有TCP,HTTP,UDP等, Java的IO分为BIO,NIO,AIO等, java领域有很多支持通信的技术, 如RMI,MINA,JMS等.对象序列化:https://www.cnb...原创 2019-04-04 11:24:13 · 163 阅读 · 0 评论 -
深入理解分布式事务,高并发下分布式事务的解决方案
1、什么是分布式事务分布式事务就是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。以上是百度百科的解释,简单的说,就是一次大的操作由不同的小操作组成,这些小的操作分布在不同的服务器上,且属于不同的应用,分布式事务需要保证这些小操作要么全部成功,要么全部失败。本质上来说,分布式事务就是为了保证不同数据库的数据一致性。2、分布式事务的产生的原因2...转载 2019-04-04 12:43:47 · 795 阅读 · 0 评论 -
强推!!!浅显易懂地解说 Paxos 算法!!!
看了几篇前面的答案,感觉都是为了逻辑的验密性,进行了大篇幅的推理,这样确实非常严谨,但是理解起来就要废一番功夫了。我就不用一步一步的推理来描述了,这样虽然丧失一些严密性,但是会尽量提高可读性,争取让每个人都能理解这个算法的要点。 Paxos算法背景介绍: Paxos算法是分布式技术大师Lamport提出的,主要目的是通过这个算法,让参与分布式处理的每个参与者逐步达成一致意见。用好理解的方式来说,就...转载 2018-11-17 23:51:54 · 372 阅读 · 0 评论 -
图解分布式一致性协议Paxos
转自:https://blog.csdn.net/kevinlynx/article/details/40122407Paxos协议/算法是分布式系统中比较重要的协议,它有多重要呢?<分布式系统的事务处理>:Google Chubby的作者Mike Burrows说过这个世界上只有一种一致性算法,那就是Paxos,其它的算法都是残次品。<大规模分布式存储系统>...转载 2018-11-17 22:20:56 · 154 阅读 · 0 评论 -
Merkle Tree算法详解
转自:https://blog.csdn.net/u012935160/article/details/22474697 Merkle Tree是Dynamo中用来同步数据一致性的算法,Merkle Tree是基于数据HASH构建的一个树。它具有以下几个特点:1、数据结构是一个树,可以是二叉树,也可以是多叉树(本BLOG以二叉树来分析)2、Merkle Tree的叶子节点的valu...转载 2018-11-20 23:10:33 · 407 阅读 · 0 评论 -
分布式系统理论之Quorum机制
一,Quorum机制介绍在分布式系统中有个CAP理论,对于P(分区容忍性)而言,是实际存在 从而无法避免的。因为,分布系统中的处理不是在本机,而是网络中的许多机器相互通信,故网络分区、网络通信故障问题无法避免。因此,只能尽量地在C 和 A 之间寻求平衡。对于数据存储而言,为了提高可用性(Availability),采用了副本备份,比如对于HDFS,默认每块数据存三份。某数据块所在的机器宕机了,就...转载 2018-11-16 19:36:23 · 151 阅读 · 0 评论 -
谷歌技术"三宝"之谷歌文件系统(GFS)
转自:https://blog.csdn.net/OpenNaive/article/details/7483523 题记:初学分布式文件系统,写篇博客加深点印象。GFS的特点是使用一堆廉价的商用计算机支撑大规模数据处理。虽然"The Google File System "&nbsp;是03年发表的老文章了,但现在仍被广泛讨论,其对后来...转载 2018-11-17 15:08:14 · 553 阅读 · 0 评论 -
谷歌技术"三宝"之BigTable
转自:https://blog.csdn.net/OpenNaive/article/details/75325892006年的OSDI有两篇google的论文,分别是BigTable和Chubby。Chubby是一个分布式锁服务,基于Paxos算法;BigTable是一个用于管理结构化数据的分布式存储系统,构建在GFS、Chubby、SSTable等google技术之上。相当多的google应...转载 2018-11-17 15:09:39 · 348 阅读 · 0 评论 -
谷歌技术"三宝"之MapReduce
转自:江湖传说永流传:谷歌技术有"三宝",GFS、MapReduce和大表(BigTable)!谷歌在03到06年间连续发表了三篇很有影响力的文章,分别是03年SOSP的GFS,04年OSDI的MapReduce,和06年OSDI的BigTable。SOSP和OSDI都是操作系统领域的顶级会议,在计算机学会推荐会议里属于A类。SOSP在单数年举办,而OSDI在双数年举办。那么这篇博客就来介绍...转载 2018-11-17 15:10:38 · 170 阅读 · 0 评论 -
分布式一致性协议Paxos
转自:https://blog.csdn.net/qq_35440678/article/details/78080431 什么是paxos协议?Paxos用于解决分布式系统中一致性问题。分布式一致性算法(Consensus Algorithm)是一个分布式计算领域的基础性问题,其最基本的功能是为了在多个进程之间对某个(某些)值达成一致(强一致);简单来说就是确定一个值,一旦被写入就...转载 2018-11-17 21:55:17 · 299 阅读 · 0 评论 -
Raft算法(zookeeper核心算法)
转自: https://www.cnblogs.com/mindwind/p/5231986.htmlLeslie Lamport 在三十多年前发表的论文《拜占庭将军问题》(参考[1])。拜占庭位于如今的土耳其的伊斯坦布尔,是东罗马帝国的首都。由于当时拜占庭罗马帝国国土辽阔,为了防御目的,因此每个军队都分隔很远,将军与将军之间只能靠信差传消息。在战争的时候,拜占庭军队内所有将军必...转载 2020-01-17 11:32:54 · 2046 阅读 · 0 评论 -
BigTable 和 MapReduce, Google File System 之间的关系是什么?
Hadoop是很多组件的集合,主要包括但不限于MapReduce,HDFS,HBase,ZooKeeper。MapReduce模仿了Google MapReduce,HDFS模仿了Google File System,HBase模仿了Google BigTable,ZooKeeper或多或少模仿了Google Chubby(没有前3个出名),所以下文就只提MapReduce、HDFS、HBase、...转载 2018-11-17 22:00:59 · 502 阅读 · 0 评论 -
数据库分区、分表、分库、分片
转自:https://blog.csdn.net/qq_28289405/article/details/80576614一、分区的概念 数据分区是一种物理数据库的设计技术,它的目的是为了在特定的SQL操作中减少数据读写的总量以缩减响应时间。 &...转载 2019-04-04 14:11:55 · 380 阅读 · 0 评论