分布式中的一些概念

来源:互联网 发布:用网络命令查看dns 编辑:程序博客网 时间:2024/05/22 11:45

新的项目将采用分布式架构,在项目中将引入Zookeeper,为了能够让自己在项目中所学的知识以文字的形式沉淀下来,特开此篇章,在学习Zookeeper之前,先来了解一点概念相关的东东。

ACID模型

原子性(Atomicity)

通俗点讲就是要么全部执行成功,要么全部不执行。

一致性(Consistency)

通俗点讲就是说事务执行的结果必须是从一个一致性状态变成另一个一致性状态。换句话说就是是要么事务提交成功,要么事务回滚成功。

隔离性(Isolation)

通俗点讲就是多个并发的事务之间不能有干扰。在标准的SQL规范中定义了4个事务隔离级别,这四个隔离级别为:未授权读取、授权读取、可重复读取、串行化。

持久性(Durability)

通俗点讲就是一旦某个事务成功结束,则对数据所做的修改必须永久的保存下来,即使发生了系统奔溃或机器宕机等,只要数据库能够重新启动,则数据必须能恢复到事务成功结束时的状态。

 

CAP理论

一致性(Consistency)

通俗点讲就是在分布式环境中,多个副本之间能够保持一致的特性。也就是说对一个数据项的更改成功后,所有的用户都可以在不同的副本中读取到一致的数据。

可用性(Availability)

通俗点讲就是系统可以一直正常对外提供服务。官方的解释是:可用性是指系统提供的服务必须一直处于可用的状态,对于用户的每一个操作请求总是能够在有限的时间内返回结果。其实官方的解释可以理解为,只要在用户能够容忍的并且是未超过系统设置的合理相应时间,给用户返回了正常的相应结果。

分区容错性(Partitiontolerance)

通俗点讲就是在分布式系统遇到任务网络分区故障的时候,系统仍然可以对外提供满足一致性和可用性的服务,除非

整个网络环境发生了故障。

 

Base理论

基本可用(BasicallyAvailable)

通俗点讲就是在分布式系统出现不可预知故障的时候,允许损失部分可用性。比如说响应时间延长、部分功能损失等。

软状态(Softstate)

通俗点讲就是在分布式系统中,允许多副本之间的数据在同步时存在中间状态,即同步过程存在延时。

最终一致性(Eventuallyconsistent)

通俗点讲就是在分布式系统中的数据,在经过一段时间的同步后,数据最终处于一个一致性的状态。

0 0