怎么保证分布式平台数据一致性?[面试8.0]

分布式的数据一致性指的分布式环境中的数据强一致,弱一致还是最终一致
而ACID的C强调的是事务前后的数据完整性

强一致性: 如利用分布式事务,分布式锁来保证数据的强一致性
弱一致性: 允许异步,如异步统计总量,往往数据有延迟的场景
最终一致性: 经过一段时间后数据最终一致,一般情况下都是异步的

最终一致性:
本地消息表: 利用数据库表记录数据更新状态,操作类型,具体信息,时间戳等,当系统故障后用于恢复
异步消息: 利用消息队列发送消息时,可以将消息保存在消息队列中,当系统恢复时可以进行恢复
补偿操作: 如补单,逆向补偿代码,回滚等

什么是顺序一致性(Sequential consistency),什么是线性一致性(Linearizability consistency)?[面试8.0]

顺序一致性:
任何一次读都能读到数据的最新数据
系统中的所有进程都能看到操作顺序但不一定和全局时钟一致
线性一致性: 又叫: 原子一致性
任何一次读都能读到数据的最新数据
系统中的所有进程都能看到操作顺序并且与全局时钟一致
注意: 线性一致性是CAP中的C

java分布式-一致性相关推荐

  1. 清华学霸花了三年时间对java理解: Java分布式架构

    什么是分布式架构 分布式系统(distributed system)是建立在网络之上的软件系统. 内聚性是指每一个数据库分布节点高度自治,有本地的数据库管理系统. 透明性是指每一个数据库分布节点对用户 ...

  2. 5个强大的Java分布式缓存框架推荐

    2019独角兽企业重金招聘Python工程师标准>>> 在开发中大型Java软件项目时,很多Java架构师都会遇到数据库读写瓶颈,如果你在系统架构时并没有将缓存策略考虑进去,或者并没 ...

  3. Zookeeper分布式一致性原理(四):Zookeeper简介

    zookeeper是一个典型的分布式数据一致性的解决方案,分布式应用程序可以基于它实现数据发布/订阅.负载均衡.命名服务.分布式协调/通知.集群管理.master选举.分布式锁和分布式队列等.Zook ...

  4. 一口气说出 4 种分布式一致性 Session 实现方式,面试杠杠的~

    点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达 今日推荐:2020年7月程序员工资统计,平均14357元,又跌了,扎心个人原创100W+访问量博客:点击前往,查看更多 前 ...

  5. 《从Paxos到ZooKeeper 分布式一致性原理与实践》读书笔记

    一.分布式架构 1.分布式特点 分布性 对等性.分布式系统中的所有计算机节点都是对等的 并发性.多个节点并发的操作一些共享的资源 缺乏全局时钟.节点之间通过消息传递进行通信和协调,因为缺乏全局时钟,很 ...

  6. Elasticsearch分布式一致性原理剖析(三)-Data篇

    前言 "Elasticsearch分布式一致性原理剖析"系列将会对Elasticsearch的分布式一致性原理进行详细的剖析,介绍其实现方式.原理以及其存在的问题等(基于6.2版本 ...

  7. 分布式一致性协议Raft原理与实例

    来源:http://m635674608.iteye.com/blog/2283621 1.Raft协议 1.1 Raft简介 Raft是由Stanford提出的一种更易理解的一致性算法,意在取代目前 ...

  8. 分布式一致性算法Raft简介(上)

    最近看了Ongaro在2014年的博士论文<CONSENSUS: BRIDGING THEORY AND PRACTICE>的部分章节,对raft有了初步的理解.其中论文中提到用于教学的u ...

  9. 理解分布式一致性:拜占庭容错与PBFT

    理解分布式一致性:拜占庭容错与PBFT 拜占庭问题 拜占庭容错BFT PBFT(Practical Byzantine Fault Tolerance) why 3f+1 ? PBFT 的优点 PBF ...

  10. 理解分布式一致性:Paxos协议之Generalized Paxos Byzantine Paxos

    理解分布式一致性:Paxos协议之Generalized Paxos & Byzantine Paxos Generalized Paxos Byzantine Paxos Byzantine ...

最新文章

  1. mysql3.0数据库修复_mysql3.0监控mysql数据库
  2. 当脑机接口应用于建筑工地,会发生什么?
  3. 基于jquery的一个javascript前端框架实现
  4. Shiro 登录、退出、校验是否登录涉及到的Session和Cookie
  5. uva 756—— Biorhythms
  6. 电机的入门之路系列5--二相四线,四相五线,四相六线电机的区分方法
  7. python去干扰线_GitHub - Guardiant/VerifyCode: 验证码去干扰线识别
  8. 【工程项目经验】VMware The path is not a valid path to the 3.10.0-229.el7.x86_64
  9. 强化学习——From drew追寻Mitsuha的学习笔记
  10. 手机怎么快速把jpg图片中的文字提取出来
  11. 【linux高级程序设计】(第十一章)System V进程间通信 4
  12. 三菱plc分拣程序_三菱PLC实现电梯控制方案,含全套程序设计
  13. 大型论坛系统环境搭建(20万日IP负载平衡实战)–Nginx+Apache2+PHP+MySQL
  14. java 获取身份证前两位对应省份
  15. 【领域建模】UML类图工具推荐
  16. pandas学习-变形-task15
  17. 关于文件命名和整理的小技巧
  18. 张景明:方剂【方歌】——清热剂
  19. 使用Python为人脸自动生成口罩
  20. linux_exec函数族-execl函数-execlp函数-execle函数-execv函数-execvp函数-execve函数

热门文章

  1. buuctf misc部分wp
  2. 东芝打印机共享怎么设置_东芝打印机如何共享
  3. matlab 画短时平均幅度谱
  4. LABjs分析 http://labjs.com/documentation.php#queuescript
  5. ISO 27002【实践指南】 -2022新标准
  6. ssm框架体检管理系统源码+文档
  7. 基于JavaWeb网上商城(以卖书为主)
  8. 记录遇到的web前端开发面试题(八股文)
  9. 批量修改pdf文件名称的方法
  10. string函数使用---复制子字符串(含substr用法)