前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >分布式相关基础理论

分布式相关基础理论

作者头像
用户2141593
发布2018-05-18 09:34:29
5420
发布2018-05-18 09:34:29
举报
文章被收录于专栏:Java进阶Java进阶

分布式环境下面临的问题:

网络通信:网络本身的不可靠性,因此会涉及到一些网络通信问题

三态:分布式架构里面,除了成功、失败、超时

分布式事务 :ACID特性

中心化和去中心化:冷备或者热备

经典的CAP/BASE理论

CAP C(一致性 Consistency): 所有节点上的数据,时刻保持一致 A可用性(Availability):每个请求都能够收到一个响应,无论响应成功或者失败 P分区容错 (Partition-tolerance):表示系统出现脑裂以后,可能导致某些server与集群中的其他机器失去联系

分布式系统因为网络的存在,必须存在P,所以我们的选择经常是牺牲掉C 或者牺牲掉A。于是就有了:CP / AP

CAP理论仅适用于原子读写的Nosql场景,不适用于数据库系统

BASE 基于CAP理论,CAP理论并不适用于数据库事务(因为更新一些错误的数据而导致数据出现紊乱,无论什么样的数据库高可用方案都是 徒劳) ,虽然XA事务可以保证数据库在分布式系统下的ACID特性,但是会带来性能方面的影响;

eBay尝试了一种完全不同的套路,放宽了对事务ACID的要求。提出了BASE理论 Basically available (基本可用): 数据库采用分片模式, 把100W的用户数据分布在5个实例上。如果破坏了其中一个实例,仍然可以保证 80%的用户可用

soft-state(软状态): 在基于client-server模式的系统中,server端是否有状态,决定了系统是否具备良好的水平扩展、负载均衡、故障恢复等特性。 Server端承诺会维护client端状态数据,这个状态仅仅维持一小段时间, 这段时间以后,server端就会丢弃这个状态,恢复正常状态

Eventually consistent:数据的最终一致性

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018年03月27日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
负载均衡
负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档