技术

java分布式,最终一致性,java幂等问题分析

2018-10-22  本文已影响12人  John13

分布式学习:

分布式
常用的分布式事务解决方案介绍有多少种?
基于 Redis 的分布式锁
分布式简介
关于分布式事务、两阶段提交协议、三阶提交协议
Dubbo、ZooKeeper、Spring cCloud、Redis都能否做分布式事务控制?
一致 Hash 算法分析
第一次有人把“分布式事务”讲的这么简单明了

java分布式的最终一致性:

1、分布式一致性机制整理
2、保证分布式系统数据一致性的6种方案

java幂等:

1、高并发的核心技术-幂等的实现方案
2、怎么理解在生成订单的时候幂等性的控制

Paxos 算法

一致性算法

CAP理论:

是说对于分布式数据存储,最多只能同时满足一致性(C,Consistency)、可用性(A, Availability)、分区容错性(P,Partition Tolerance)中的两者。

CAP的3进2:
在分布式系统中,最多只能选取CAP理论的两点,如CA、CP、AP。
ps:
其中AP为大多数网站架构的选择,
CA就是以前的关系型数据库,如MySQL
CP指的就是Redis、MongoDB

BASE理论:

BASE理论是对CAP理论的延伸,核心思想是即使无法做到强一致性(Strong Consistency,CAP的一致性就是强一致性),但应用可以采用适合的方式达到最终一致性(Eventual Consitency)。
BASE是指基本可用(Basically Available)、软状态( Soft State)、最终一致性( Eventual Consistency)。

BASE理论就是为了解决关系型数据库强一致性引起的问题而引起的可用性降低提出的解决方案。

ACID和BASE的区别与联系:

ACID是传统数据库常用的设计理念,追求强一致性模型。BASE支持的是大型分布式系统,提出通过牺牲强一致性获得高可用性。

ACID和BASE代表了两种截然相反的设计哲学

在分布式系统设计的场景中,系统组件对一致性要求是不同的,因此ACID和BASE又会结合使用。

设计分布式系统时,经常需要考虑如下的挑战:

设计:

分布式系统中常见的三种一致性模型:

上一篇 下一篇

猜你喜欢

热点阅读