分布式理论|青训营笔记

82 阅读3分钟

分布式理论|青训营笔记

这是我参与「第五届青训营 」伴学笔记创作活动的第 6 天

前言

分布式计算是计算机科学中一个研究方向,它研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给多个计算机进行处理,最后把这些计算结果综合起来得到最终的结果。分布式网络存储技术是将数据分散地存储于多台独立的机器设备上。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,不但解决了传统集中式存储系统中单存储服务器的瓶颈问题,还提高了系统的可靠性、可用性和扩展性。

  • 分布式系统定义:跨多个节点的计算机程序的集合
  • 使用分布式系统的五大优势:去中心化、低成本、弹性、资源共享、可靠性高
  • 分布式系统的挑战:故障、网络、环境、安全

理论基础

CAP理论

CAP定义,分别代表的是一致性,可用性,分区容错性,当然三者无法同时达到,最多只能同时实现二点。

一致性:在分布式系统中的所有数据备份,在同一时刻是否同样的值。(等同于所有节点访问同一份最新的数据副本)。

可用性:保证每个请求不管成功或者失败都有响应。

分区容错性:系统中任意信息的丢失或失败不会影响系统的继续运作。

所以就只会出现CA、AP、CP这三个系统

因此在进行分布式架构设计的时候,必须要懂得取舍,当前一般是通过分布式缓存中各个节点的最终一致性来提高系统的性能、通过使用多节点之间的数据异步复制技术来实现集群化的数据一致性。

ACID理论

ACID理论是针对CA系统而言的、通常呢在数据库中最具有广泛意义,事务是数据库系统中非常重要的概念,它是数据库管理系统执行过程中的一个逻辑单元,它能够保证一个事务中的所有操作要么全部执行,要么全都不执行数据库事务拥有四个特性ACID:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)

BASE理论

BASE理论是针对AP系统而言的,它是Basically Available(基本可用)、Soft state(软状态)和Eventually consistent(最终一致性)三个短语的简写。

深度理解一下就是:BASE是对CAP中一致性和可用性权衡的结果,其来源于对大规模互联网系统分布式实践的结论,是基于CAP定理逐步演化而来的,其核心思想是即使无法做到强一致性(Strong consistency),但每个应用都可以根据自身的业务特点,采用适当的方式来使系统达到最终一致性(Eventual consistency)。

引用

青训营ppt资料

百度百科