【从零学分布式】——分布式架构概要

前提

    近些年来,分布式成为很火爆的研究方向,随着大型互联网系统的快速发展,集中部署到大型机上的体系越来越不能满足当今的计算机系统。随着微型计算机的出现,分布式的处理方式受到业界的青睐,计算机系统正在经历从集中式到分布式架构的变革。

集中式

20世纪60年代大型主机优越的性能和良好的稳定性,而且在单机处理能力上优势非常明显。集中式最大的特点是部署结构简单,不需要过多考虑对服务进行多个节点部署,也不用考虑多节点之间的分布式协作问题。但是大型机的人才培养成本比较高,大型主机操作比较复杂。而且大型主机比较昂贵,其次最重要的是明显的单点的问题,大型主机不能保证永远不会出现故障,大型机上的业务扩容影响了业务的发展,上述一系列的原因,导致纷纷转入搭建分布式系统。

分布式

是一个硬件或软件组件分布在不同的网络计算机上,彼此之间仅仅通过消息传递进行通信和协调的系统。

相对于集中式,分布式明显的特征

分布性:多台机器在空间上随意分布,而且分布也是随时变动的

并发性:多个节点可能会同时并发的操作一些共享资源,高效协调并发是分布式最大的挑战之一

对等性:没有主从之分

缺乏全局时钟:多个进程通过交换消息来进行通信,没有办法断定先后顺序,缺乏全局时钟控制。

故障总会发生:分布式的计算机可能会发生任何形式的故障。

在特征中暴露分布式中一定会出现的问题

通信异常,多台机器协同合作,从单机延时纳秒级别到现在毫秒级别,延时差别,造成信息的延迟和丢失。

网络分区,网络延时,最终会造成只有部分节点能够正常通信,其余的则不能,这样就出现了数据的事务处理问题

三态:分布式接收和请求的存在三种状态,成功,失败,超时。

节点故障:组成服务器节点出现的宕机的现象。

    上述问题归根结底还是可能会造成数据不一致的问题,异常影响了事务的进行。所以为了解决分布式造成的问题,分布式事务也就成为再也无法回避的问题了。

解决问题提出的理论

    集中式采用传统的事务处理方式ACID特性基本上可以满足,但是分布式系统中事务的参与者,支持事务的服务器,以及资源服务器均有可能位于不同的机器上,所以分布式事务会涉及多个数据源或业务系统的操作。为此科学家提出了CAP理论,分布式系统不可能同时满足一致性,可用性,分区容错性三个基本需求,最多同时满足其中的两项。经过研究表明大部分精力花费在一致性和可用性之间寻求平衡。

    在此基础上提出BASE是对CAP一致性和可用性权衡的结果,虽然可能无法做到强一致性,但是通过适当的方式会达到最终一致性。提出三要素:基本可用,弱状态(允许数据存在中间状态,并且中间状态不会影响整理的可用性),最终一致性(系统中所有的副本最终是一致的)。

总结

    集中式向分布式的转换过程,出现了一系列的问题,同时为了解决这些问题结合ACID和CAP和BASE等分布式事务与一致性的经典理论使得分布式得以广泛应用。

你可能感兴趣的:(【框架深入】)