Eventual Consistency-数据一致性
Eventual Consistency-数据一致性
- 背景
- 重试
- 幂等
- 状态机
- 恢复日志
- 异步校验
- 重试
- 可靠消息最终一致性方案
- 核心流程
背景
分布式事务框架重量级[1]基于XA协议的两阶段提交2PC方案 存在问题: 协议通信带来的高延迟、时间损耗;最终一致性需要使用异步校验兜底[2]基于支付宝的TCC方案[3]基于ebay的消息队列异步去报方案轻量级[1]幂等/重试 恢复不一致数据[2]状态机 [3]恢复日志[4]异步校验评价标准[1]消息可靠性[2]业务侵入
CAP理论 任何联网共享数据系统只能同时满足2个属性。[1]一致性 Consistency 每次读取都会收到最新写入、或者错误 【可选项】[2]可用性 Avaliability 每个请求都会受到一个不是错误的响应 【可选项】[3]分区容忍性 Partition Tolerance 节点之间的网络丢弃、延迟任意数量的消息,系统仍可继续运行 【必选项】
Base原则 AP、CP[1]Basically Available 基本可用[2]Soft State 软状态[3]Eventual consistency 最终一致性
重试
同步重试 [1]同步等待,占用系统线程资源[2]流量放大,可能导致系统雪崩
异步重试[1]时间间隔 随其重试次数指数增长[2]重试阈值 超过之后,报警通知可用性保障[0]服务可用性 98%[1]一次重试 99.96% 3个9[2]两次重试 99.9992% 5个9
幂等
定义 相同操作执行多次,同执行一次,产生效果一样。
分类 [1]天然幂等 查询、删除[2]人为幂等 TCP超时重传
实现方案[1]基于记录的悲观锁[2]基于记录版本号、状态机的乐观锁[3]基于数据库唯一索引的去重表[4]基于全局唯一标识token
状态机
恢复日志
异步校验
重试
微服务系统同步调用 TCC 分布式事务异步调用 MQ 可靠消息最终一致性方案
可靠消息最终一致性方案
解决角度[1]可靠消息[2]最终一致性
核心流程
一、上游服务投递消息Step1 Step2Step3Steo4
二、下游服务接收消息三、100%可靠投递消息—上游服务四、100%可靠接收消息—下游服务五、RocketMQ实现方案
Eventual Consistency-数据一致性相关推荐
- 最终一致性计算机学,最终一致性(eventual consistency)引
一致性设计在分布式系统中是一个重要问题.如果一个系统同时使用多个子数据系统来存储与读取数据,就必须设计满足功能需求的一致性定义.如果系统对不同数据子系统进行操作的结果不一致,不但可能会使用户困惑,更可 ...
- Rethinking eventual consistency论文部分段落翻译
这篇论文貌似有两页格式不大友好,导致翻译软件无法识别,现在提供这部分的中文翻译(我也是自己弄的,质量不一定佳,需者自取) 链接: Rethinking eventual consistency论文部分 ...
- Nosql数据一致性技术概要
主要参考, http://highlyscalable.wordpress.com/2012/09/18/distributed-algorithms-in-nosql-databases/, Dis ...
- Amazon S3数据一致性模型
左右Amazon S3有两种类型的数据的一致性模型的: 最后,一致性和读一致性. 有下面几种行为: 1 写一个新的object,然后開始读它.直到全部的变化都传播完(副本),你才干读到它,否则就是ke ...
- 架构设计:系统存储(23)——数据一致性与Paxos算法(上)
今年年初参加一家公司的面试,发生了一件有趣的事情.当我给面试官解释Ceph的运行原理时,提到了Ceph支持POSIX标准(Portable Operating System Interface),面试 ...
- 微服务系统中的数据一致性,你都会了吗
你好,我是看山. 从单体架构到分布式架构,从巨石架构到微服务架构.系统之间的交互越来越复杂,系统间的数据交互量级也是指数级增长.作为一个系统,我们要保证逻辑的自洽和数据的自洽. 数据自洽有两方面要求: ...
- 如何保证微服务下的数据一致性?
目录 1.传统应用的事务管理 1.1 本地事务 1.2 分布式事务 1.2.1 两阶段提交(2PC) 1.2.2 三阶段提交(3PC) 2.微服务下的事务管理 3.实现微服务下数据一致性的方式 3.1 ...
- 一致性(Consistency)介绍
一致性是分布式领域必须面对的主要问题之一.理想的一致性模型是:当一条更新出现时,所有的观察者都能"看到"这个更新.但是该模型在分布式领域很难实现,对应的理论基础是CAP理论.这里讨 ...
- HybridTime - Accessible Global Consistency with High Clock Uncertainty
Amazon's Dynamo [9] and Facebook's Cassandra [13], relax the consistency model,and offer only eventu ...
- NoSQL 数据库不应该放弃 Consistency
谈到 NoSQL,一定会提及一致性(Consistency),按照 CAP 定理,有些 NoSQL 数据库放弃了一致性,但是 NoSQL 放弃是必然的选择吗? 从 1970's,关系型数据库(RDB, ...
最新文章
- oracle和mysql存储汉字_mysql和oracle的一个汉字占几个字节
- android 足球游戏,足球游戏哪个好玩,安卓单机足球游戏哪个好玩
- “大数据与精准营销沙龙”成功在京召开
- 两个苹果手机怎么传通讯录_苹果手机怎么导入通讯录?教你换机快速导入
- linux diff 补丁,Linux中diff、补丁的用法及介绍
- Ubuntu修改open files数
- Abaqus 用户子程序 UEL
- eclipse开发webservice实例及问题解决
- SORPAS-焊接仿真模拟软件
- 罗德矢量网络分析仪高效测试软件NSAT-1000
- 数字信号处理1——离散时间系统与常见信号(matlab)
- NeRF 源码分析解读(二)
- panabit之Web认证
- idou老师教你学Istio12 : Istio 实现流量镜像
- Java随机密码生成器
- 安徽新科技计算机学校是高中吗,2021最新安徽高中排名一览表 所以高中学校
- 决策树决策算法ID3算法、改进算法C4.5算法和CART算法代码实现
- CSS给元素添加边框(样式、颜色、宽度)
- 揭秘分享 | 汽车金融细分风控场景和反欺诈策略
- excel表格下拉选项怎么设置_让表格美观好看几个Excel设置技巧