郑州营销型网站建设哪家好,网络品牌营销案例,响应式布局是什么意思,沙井做网站公司怎么理解#xff1a;一致性和可用性不可兼得呢?
现在有3个节点node1、node2、node3,其中node3因为网络原因暂时不可用了#xff0c;但是#xff0c;依然有些请求已经到达了, node1和node2数据是同步的,node3节点虽然存活#xff0c;但是因为网络原因#xff0c;并没有同…怎么理解一致性和可用性不可兼得呢?
现在有3个节点node1、node2、node3,其中node3因为网络原因暂时不可用了但是依然有些请求已经到达了, node1和node2数据是同步的,node3节点虽然存活但是因为网络原因并没有同步过来最新数据。 如何保证node3的数据也是对的呢? 那就是先阻塞哪里等网络恢复数据同步好了再返回。 此时就是牺牲了可用性恢复前暂时不可用了嘛 所以说为了一致性 可用性可能暂时不可用。C(一致性) A(可用性) 二选一。 而P分区容错性也就是有些节点挂掉了依然要保持系统能提供服务这肯定是必须的。 所以要么是CP要么是AP。 但是由于分布式系统各个系统之间是通过网络连接的。网络是复杂的因此一定会出现P, 也就是分区容错性(健康和不健康的分开)这种问题。 -------------
思考题那么es是cp还是ap呢
es当有节点故障时是先发出警告等会就会从集群中被移除因此这个节点变得不可用。它上面的数据会被分片到其它可用的节点上最终变得可用。 因此es是牺牲了可用性因此es是CP。 -----------base理论
BA基本可用。 // 允许损失部分可用性保证核心可用。 如es有问题的节点恢复后又会重新加入集群中又可用。
S软状态。// 允许出现临时不一致
E最终一致性。 --------------------
得失的权衡 ---------BASE理论解决分布式事务问题
1.AP模式各个事务分别提交允许出现结果不一致然后采用补救措施。恢复数据最终保证一致。 (各个事务提交后看看对方有问题没有一看有问题采用补救措施) 2.CP 各个事务执行后相互等待都没问题了同时提交。出现问题了同时回滚。
缺点就是提交前服务是不可用的。 因此必须有协调者。当有失败时协调者进行通知。
子事务是分支事务。 协调者是全局事务。