The interview questions
文章平均质量分 60
faramita_of_mine
这个作者很懒,什么都没留下…
展开
-
redis对象保存方式?
redis对象保存方式?一、redis对象保存方式?二、Redis数据淘汰机制一、redis对象保存方式? Json字符串:需要把对象转换为json字符串,当做字符串处理。直接使用set get来设置或者或。 优点:设置和获取比较简单 缺点:没有提供专门的方法,需要把把对象转换为json。(jsonlib)字节: 需要做序列号,就是把对象序列化为字节保存。如果是担心JSON转对象会消耗资源的情况,这个问题需要考量几个地方, 第一点:就是使用的JSON转换lib是否就会存在性能问题原创 2022-04-15 10:00:00 · 2664 阅读 · 6 评论 -
数据库优化之分表?
数据库优化之分表?一、数据库优化之分表?二、数据库优化之读写分离一、数据库优化之分表? 分表分为水平(按行)分表和垂直(按列)分表 根据经验,Mysql表数据一般达到百万级别,查询效率会很低,容易造成表锁,甚至堆积很多连接,直接挂掉;水平分表能够很大程度减少这些压力。按行数据进行分表。 如果一张表中某个字段值非常多(长文本、二进制等),而且只有在很少的情况下会查询。这时候就可以把字段多个单独放到一个表,通过外键关联起来。水平分表策略: 1.按时间分表 这种分表方式有一定的局限性,原创 2022-04-14 10:30:00 · 274 阅读 · 0 评论 -
索引使用小技巧?
索引使用小技巧?一、索引使用小技巧?一、索引使用小技巧?索引弊端 1.占用磁盘空间。 2.对dml(插入、修改、删除)操作有影响,变慢。使用场景: a: 肯定在where条件经常使用,如果不做查询就没有意义。 b: 该字段的内容不是唯一的几个值(sex) 。 c: 字段内容不是频繁变化。具体技巧: 1.对于创建的多列索引(复合索引),不是使用的第一部分就不会使用索引。 alter table dept add index my_ind (dname,loc); //原创 2022-04-11 22:49:16 · 99 阅读 · 0 评论 -
选择合适的存储引擎
选择合适的存储引擎一、选择合适的存储引擎二、数据库优化之创建合适的索引?一、选择合适的存储引擎 在开发中,我们经常使用的存储引擎 myisam / innodb/ memoryMyISAM存储引擎 如果表对事务要求不高,同时是以查询和添加为主的,我们考虑使用myisam存储引擎. 比如 bbs 中的 发帖表,回复表。INNODB存储引擎: 对事务要求高,保存的数据都是重要数据,我们建议使用INNODB,比如订单表,账号表。Memory 存储 我们数据变化频繁,不需要入库,同时又频繁的原创 2022-04-09 23:41:44 · 1251 阅读 · 0 评论 -
Hibernate映射对象的状态
Hibernate映射对象的状态一、Hibernate映射对象的状态二、Spring Boot 的核心注解是哪个?它主要由哪几个注解组成的?一、Hibernate映射对象的状态 临时状态/瞬时状态(transient):刚刚用new语句创建,没有被持久化不处于session中(没有使用session的方法去操作临时对象)。该对象成为临时对象 持久化状态/托管状态(persistent):已经被持久化,加入到session的缓存中。session是没有关闭该状态的对象为持久化对象。 游离状态/原创 2022-04-06 10:30:00 · 285 阅读 · 0 评论 -
iBatis(mybatis)与Hibernate有什么不同?
iBatis-mybatis与Hibernate有什么不同?一、iBatis(mybatis)与Hibernate有什么不同?一、iBatis(mybatis)与Hibernate有什么不同?相同点: 都是java中orm框架、屏蔽jdbc api的底层访问细节,使用我们不用与jdbc api打交道,就可以完成对数据库的持久化操作。jdbc api编程流程固定,还将sql语句与java代码混杂在了一起,经常需要拼凑sql语句,细节很繁琐。 ibatis的好处:屏蔽jdbc api的底层访问细节;原创 2022-04-05 18:58:23 · 1168 阅读 · 0 评论 -
Spring事务的隔离级别
Spring事务的隔离级别一、Spring事务的隔离级别一、Spring事务的隔离级别 1.ISOLATION_DEFAULT: 这是一个PlatfromTransactionManager默认的隔离级别,使用数据库默认的事务隔离级别.另外四个与JDBC的隔离级别相对应。 2.ISOLATION_READ_UNCOMMITTED: 这是事务最低的隔离级别,它充许令外一个事务可以看到这个事务未提交的数据。这种隔离级别会产生脏读,不可重复读和幻像读。 3.ISOLATION_READ_COMMIT原创 2022-04-04 22:13:07 · 16640 阅读 · 1 评论 -
讲一下Spring的事务传播特性
讲一下Spring的事务传播特性一、讲一下Spring的事务传播特性一、讲一下Spring的事务传播特性多个事务存在是怎么处理的策略; 1.PROPAGATION_REQUIRED: 如果存在一个事务,则支持当前事务。如果没有事务则开启。 2. PROPAGATION_SUPPORTS: 如果存在一个事务,支持当前事务。如果没有事务,则非事务的执行。 3. PROPAGATION_MANDATORY: 如果已经存在一个事务,支持当前事务。如果没有一个活动的事务,则抛出异常。 4. PRO原创 2022-04-03 20:39:04 · 254 阅读 · 0 评论 -
简单讲一下SpringMVC的执行流程?
简单讲一下SpringMVC的执行流程?一、Struts2中的拦截器,你都用它干什么?二、简单讲一下SpringMVC的执行流程?一、Struts2中的拦截器,你都用它干什么? java里的拦截器是动态拦截Action调用的对象。它提供了一种机制可以使开发者可以定义在一个action执行的前后执行的代码,也可以在一个action执行前阻止其执行,同时也提供了一种可以提取action中可重用部分的方式。 在AOP(Aspect-Oriented Programming)中拦截器用于在某个方法或字段被原创 2022-04-02 10:30:00 · 6987 阅读 · 0 评论 -
MVC框架
MVC框架一、MVC框架二、简单讲一下struts2的执行流程?一、MVC框架什么是MVC框架? 是为了解决传统MVC模式(Jsp + Servlet + JavaBean)的一些问题而出现的框架。传统MVC模式问题 所有的Servlet和Servlet映射都要配置在web.xml中,如果项目太大,web.xml就太庞大,并且不能实现1、现模块化管理。2、Servlet的主要功能就是接受参数、调用逻辑、跳转页面,比如像其他字符编码、文件上传等功能也要写在Servlet中,不能让Servle原创 2022-04-01 10:30:00 · 2824 阅读 · 0 评论 -
什么是框架?
什么是框架?一、什么是框架?二、MVC模式一、什么是框架? 框架(Framework)是一个框子——指其约束性,也是一个架子——指其支撑性。 IT语境中的框架,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构。在此结构上可以根据具体问题扩展、安插更多的组成部分,从而更迅速和方便地构建完整的解决问题的方案。 1)框架本身一般不完整到可以解决特定问题,但是可以帮助您快速解决特定问题;没有框架所有的工作都从零开始做,有了框架,为我们提供了一定的功能,我们就可以在框 架的基础上开发,极大的解放原创 2022-03-31 10:00:00 · 12023 阅读 · 4 评论 -
Jquery的Ajax和原生Js实现Ajax有什么关系?
Jquery的Ajax和原生Js实现Ajax有什么关系?一、Jquery的Ajax和原生Js实现Ajax有什么关系?二、简单说一下html5?你对现在的那些新技术有了解?三、简单说一下css3?一、Jquery的Ajax和原生Js实现Ajax有什么关系? jQuery中的Ajax也是通过原生的js封装的。封装完成后让我们使用起来更加便利,不用考虑底层实现或兼容性等处理。 如果采用原生js实现Ajax是非常麻烦的,并且每次都是一样的。如果我们不使用jQuery我们也要封装Ajax对象的方法和属性。有原创 2022-03-30 23:11:01 · 1222 阅读 · 0 评论 -
简单说一下html,css,javascript在网页开发中的定位?
简单说一下html,css,javascript在网页开发中的定位?一、简单说一下html,css,javascript在网页开发中的定位?二、简单介绍一下Ajax?三、js和jQuery的关系?一、简单说一下html,css,javascript在网页开发中的定位? HTML 超文本标记语言 定义网页的结构 CSS 层叠样式表,用来美化页面 JavaScript主要用来验证表单,做动态交互(其中ajax)二、简单介绍一下Ajax? 什么是Ajax? 异步的javascript和xml原创 2022-03-29 23:11:41 · 778 阅读 · 0 评论 -
Elasticsearch在部署时,对Linux的设置有哪些优化方法?
Elasticsearch在部署时,对Linux的设置有哪些优化方法?一、在并发情况下,Elasticsearch如何保证读写一致?二、Elasticsearch在部署时,对Linux的设置有哪些优化方法?三、Elasticsearch和Lucene的区别一、在并发情况下,Elasticsearch如何保证读写一致? 1.可以通过版本号使用乐观并发控制,以确保新版本不会被旧版本覆盖,由应用层来处理具体的冲突; 2.另外对于写操作,一致性级别支持quorum/one/all,默认为quorum,即只原创 2022-03-28 23:48:10 · 2557 阅读 · 0 评论 -
Redis集群方案应该怎么做?都有哪些方案?
Redis集群方案应该怎么做?都有哪些方案?一、Redis集群方案应该怎么做?都有哪些方案?二、Redis回收进程如何工作的?三、分布式Redis是前期做还是后期规模上来了再做好?为什么?一、Redis集群方案应该怎么做?都有哪些方案? 1.twemproxy,大概概念是,它类似于一个代理方式,使用方法和普通redis无任何区别,设置好它下属的多个redis实例后,使用时在本需要连接redis的地方改为连接twemproxy,它会以一个代理的身份接收请求并使用一致性hash算法,将请求转接到具体red原创 2022-03-27 23:28:15 · 1205 阅读 · 0 评论 -
简单介绍一下关系数据库三范式?
简单介绍一下关系数据库三范式?一、简单介绍一下关系数据库三范式?二、事务四个基本特征或 ACID 特性。一、简单介绍一下关系数据库三范式? 范式就是规范,就是关系型数据库在设计表时,要遵循的三个规范。要想满足第二范式必须先满足第一范式,要满足第三范式必须先满足第二范式。 第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。列数据的不可分割。 第二范式(2NF)要求数据库表中的每个行必须可以被唯一地区分。为实原创 2022-03-26 22:37:22 · 976 阅读 · 0 评论 -
说一下session和cookie的区别?你在项目中都有哪些地方使用了?
说一下session和cookie的区别?你在项目中都有哪些地方使用了?一、session与cookie的区别二、MVC的各个部分都有那些技术来实现?一、session与cookie的区别 Session和Cookie都是会话(Seesion)跟踪技术。Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。但是Session的实现依赖于Cookie,sessionId(session的唯一标识需要存放在客户端).cookie 和session 的区别:原创 2022-03-25 22:44:02 · 662 阅读 · 0 评论 -
简单说一下servlet的生命周期?
简单说一下servlet的生命周期?一、简单说一下servlet的生命周期?二、Servlet API中forward() 与redirect()的区别?一、简单说一下servlet的生命周期? servlet有良好的生存期的定义,包括加载和实例化、初始化、处理请求以及服务结束。这个生存期由javax.servlet.Servlet接口的init,service和destroy方法表达。 加载Servlet的class---->实例化Servlet----->调用Servlet的ini原创 2022-03-23 23:05:07 · 1403 阅读 · 0 评论 -
Java面试题之:面向对象的特征及为什么需要包装类型
面向对象的特征及为什么需要包装类型一、面向对象的特征有哪些方面?二、有了基本数据类型,为什么还需要包装类型?一、面向对象的特征有哪些方面?面向对象有四大基本特征:封装、抽象、继承、多态 面向对象的封装性,即将对象封装成一个高度自治和相对封闭的个体,对象状态(属性)由这个对象自己的行为(方法)来读取和改变。张三这个人,他的姓名等属性,要有自己提供的获取或改变的方法来操作。private name setName getName。 抽象就是找出一些事物的相似和共性之处,然后将这些事物归为一个类,这个原创 2022-03-21 11:24:30 · 533 阅读 · 0 评论 -
Java软件开发面试题总结
Java面试题之:面试题总结简介一、Java基础模块① JDK、JRE和JVM的区别?② ==和equals的区别是什么?③ 两个对象的hashCode()相同,则equals()也一定为true,对吗?④ final 在 Java 中有什么作用?⑤ Java 中的 Math. round(-1. 5) 等于多少?⑥ String 属于基础的数据类型吗?⑦ Java 中操作字符串都有哪些类?它们之间有什么区别?⑧ String str="i"与 String str=new String("i")一样吗?⑨原创 2022-02-23 10:00:00 · 1058 阅读 · 5 评论 -
Java面试题之:Kafka里的生产者与消费者设计
Java面试题之:Kafka里的生产者与消费者设计一、负载均衡(partition 会均衡分布到不同 broker 上)二、批量发送三、压缩(GZIP 或 Snappy)四、消费者设计一、负载均衡(partition 会均衡分布到不同 broker 上) 由于消息 topic 由多个 partition 组成,且 partition 会均衡分布到不同 broker 上,因此,为了有效利用 broker 集群的性能,提高消息的吞吐量,producer 可以通过随机或者 hash 等方式,将消息平均发送到原创 2022-02-22 10:00:00 · 154 阅读 · 0 评论 -
Java面试题之:Kafka 数据存储设计
Java面试题之:Kafka 数据存储设计一、partition 的数据文件(offset,MessageSize,data)二、数据文件分段 segment(顺序读写、分段命令、二分查找)三、数据文件索引(分段索引、稀疏存储)一、partition 的数据文件(offset,MessageSize,data) partition 中的每条 Message 包含了以下三个属性:offset,MessageSize,data,其中 offset 表示 Message 在这个 partition 中的偏移原创 2022-02-21 10:00:00 · 117 阅读 · 0 评论 -
Java面试题之:Kafka 概念
Java面试题之:Kafka 概念Kafka 概念Kafka 概念 Kafka 是一种高吞吐量、分布式、基于发布/订阅的消息系统,最初由 LinkedIn 公司开发,使用Scala 语言编写,目前是 Apache 的开源项目。broker:Kafka 服务器,负责消息存储和转发;topic:消息类别,Kafka 按照 topic 来分类消息;partition:topic 的分区,一个 topic 可以包含多个 partition,topic 消息保存在各个partition 上;offse原创 2022-02-20 10:00:00 · 173 阅读 · 0 评论 -
Java面试题之:Zookeeper 工作原理(原子广播)
Java面试题之:Zookeeper 工作原理(原子广播)Zookeeper 工作原理:Zookeeper 工作原理:Zookeeper 的核心是原子广播,这个机制保证了各个 server 之间的同步。实现这个机制的协议叫做 Zab 协议。Zab 协议有两种模式,它们分别是恢复模式和广播模式。当服务启动或者在领导者崩溃后,Zab 就进入了恢复模式,当领导者被选举出来,且大多数 server 的完成了和 leader 的状态同步以后,恢复模式就结束了。状态同步保证了 leader 和 server原创 2022-02-19 10:00:00 · 243 阅读 · 0 评论 -
Java面试题之:投票机制
Java面试题之:投票机制一、选举过程如下:二、具体选举过程:一、选举过程如下: 每个 sever 首先给自己投票,然后用自己的选票和其他 sever 选票对比,权重大的胜出,使用权重较大的更新自身选票箱。具体选举过程如下:每个 Server 启动以后都询问其它的 Server 它要投票给谁。对于其他 server 的询问,server 每次根据自己的状态都回复自己推荐的 leader 的 id 和上一次处理事务的 zxid(系统启动时每个 server 都会推荐自己)。收到所有 Server原创 2022-02-18 10:00:00 · 314 阅读 · 0 评论 -
Java面试题之: ZAB 协议
Java面试题之: ZAB 协议一、事务编号 Zxid(事务请求计数器+ epoch)epoch二、Zab 协议有两种模式-恢复模式(选主)、广播模式(同步)三、ZAB 协议 4 阶段①Leader election(选举阶段-选出准 Leader)②Discovery(发现阶段-接受提议、生成 epoch、接受 epoch)③Synchronization(同步阶段-同步 follower 副本)④Broadcast(广播阶段-leader 消息广播)四、ZAB 协议 JAVA 实现(FLE-发现阶段和同原创 2022-02-17 17:27:50 · 167 阅读 · 0 评论 -
Java面试题之:Zookeeper
Java面试题之:Zookeeper一、Zookeeper概念二、Zookeeper 角色①Leader②Follower③Observer一、Zookeeper概念 Zookeeper 是一个分布式协调服务,可用于服务发现,分布式锁,分布式领导选举,配置管理等。Zookeeper 提供了一个类似于 Linux 文件系统的树形结构(可认为是轻量级的内存文件系统,但只适合存少量信息,完全不适合存储大量文件或者大文件),同时提供了对于每个节点的监控与通知机制。二、Zookeeper 角色 Zooke原创 2022-02-16 12:41:56 · 87 阅读 · 0 评论 -
Java面试题之:sql优化方式
Java面试题之:sql优化方式一、索引查询、避免全表扫描二、查询数据尽量避免使用or三、连续查询,能用between就用四、where查询条件,对字段进行表达式操作五、where查询条件,对字段进行函数操作六、多张数据表查询数据,使用inner join七、in()和exists()八、使用like进行数据表查询时,能用%就不建议使用双%九、最左优先十、精确类型匹配十一、表越小,查询越快十二、数据量大时,合理使用分区表十三、合理选择存储引擎十四、慢查询日志一、索引查询、避免全表扫描 查询数据库的数据原创 2022-02-15 09:00:00 · 4551 阅读 · 1 评论 -
Java面试题之:mysql的事务隔离级别
Java面试题之:mysql的事务隔离级别一、隔离级别①原子性:②一致性:③隔离性:④持久性:二、事务的基本要素(ACID)①原子性(Atomicity):②一致性(Consistency):③隔离性(Isolation):④持久性(Durability):三、事务的并发问题①脏读:②不可重复读:③幻读:四、MySQL事务隔离级别一、隔离级别①原子性: 一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。事务在执行过程当中发生错误,会被回滚(Roll原创 2022-02-14 09:00:00 · 719 阅读 · 0 评论 -
Java面试题之:Java算法(十大常见排序算法及其扩展(详细讲解))
Java面试题之:Java算法一、二分查找一、二分查找 二分查找又叫折半查找,要求待查找的序列有序。每次取中间位置的值与待查关键字比较,如果中间位置的值比待查关键字大,则在前半部分循环这个查找的过程,如果中间位置的值比待查关键字小,则在后半部分循环这个查找的过程。直到查找到了为止,否则序列中没有待查的关键字。...原创 2022-02-12 16:32:36 · 2885 阅读 · 3 评论 -
Java面试题之:HDFS
Java面试题之:HDFS一、Client二、NameNode三、Secondary NameNode四、DataNode一、Client Client(代表用户) 通过与 NameNode 和 DataNode 交互访问 HDFS 中 的文件。 Client 提供了一个类似 POSIX 的文件系统接口供用户调用。二、NameNode 整个 Hadoop 集群中只有一个 NameNode。 它是整个系统的“ 总管”, 负责管理 HDFS 的目录树和相关的文件元数据信息。 这些信息是以“ fsim原创 2022-02-10 21:55:21 · 1018 阅读 · 0 评论 -
Java面试题之:一致性 Hash
Java面试题之:一致性 Hash一、简介二、一致性 Hash 特性①平衡性(Balance):②单调性(Monotonicity):③平滑性(Smoothness):三、一致性 Hash 原理①建构环形 hash 空间:②把需要缓存的内容(对象)映射到 hash 空间:③把服务器(节点)映射到 hash 空间:④把对象映射到服务节点:⑤考察 cache 的变动:①移除 cache:②添加 cache:⑥虚拟节点:一、简介 一致性哈希算法(Consistent Hashing Algorithm)是一原创 2022-02-08 16:20:01 · 276 阅读 · 0 评论 -
Java面试题之:Gossip
Java面试题之:Gossip简介简介 Gossip 算法又被称为反熵(Anti-Entropy),熵是物理学上的一个概念,代表杂乱无章,而反熵就是在杂乱无章中寻求一致,这充分说明了 Gossip 的特点:在一个有界网络中,每个节点都随机地与其他节点通信,经过一番杂乱无章的通信,最终所有节点的状态都会达成一致。每个节点可能知道所有其他节点,也可能仅知道几个邻居节点,只要这些节可以通过网络连通,最终他们的状态都是一致的,当然这也是和疫情传播的特点一样。Gossip 算法详细介绍...原创 2022-02-06 21:56:35 · 531 阅读 · 0 评论 -
Java面试题之:NWR
Java面试题之:NWR简介及介绍简介及介绍 N:在分布式存储系统中,有多少份备份数据。 W:代表一次成功的更新操作要求至少有 w 份数据写入成功。 R: 代表一次成功的读数据操作要求至少有 R 份数据成功读取。 NWR值的不同组合会产生不同的一致性效果,当W+R>N 的时候,整个系统对于客户端来讲能保证强一致性。而如果 R+W<=N,则无法保证数据的强一致性。以常见的 N=3、W=2、R=2 为例:N=3,表示,任何一个对象都必须有三个副本(Replica),W=2 表示,对原创 2022-02-05 11:00:00 · 362 阅读 · 0 评论 -
Java面试题之:raft 协议和 zab 协议区别
Java面试题之:raft 协议和 zab 协议区别一、相同点二、不同点一、相同点采用 quorum 来确定整个系统的一致性,这个 quorum 一般实现是集群中半数以上的服务器。zookeeper 里还提供了带权重的 quorum 实现。都由 leader 来发起写操作。都采用心跳检测存活性。leader election 都采用先到先得的投票方式。二、不同点zab 用的是 epoch 和 count 的组合来唯一表示一个值, 而 raft 用的是 term 和 index。zab原创 2022-02-04 11:00:00 · 4224 阅读 · 2 评论 -
Java面试题之:Raft
Java面试题之:Raft简介一、角色二、Term(任期)三、选举(Election)四、安全性(Safety)简介 与 Paxos 不同 Raft 强调的是易懂(Understandability),Raft 和 Paxos 一样只要保证 n/2+1 节点正常就能够提供服务;raft 把算法流程分为三个子问题:选举(Leader election)、日志复制(Log replication)、安全性(Safety)三个子问题。一、角色 Raft 把集群中的节点分为三种状态:Leader、 Fo原创 2022-02-03 11:00:00 · 666 阅读 · 0 评论 -
Java面试题之:Zab
Java面试题之:Zab一、简介及介绍一、简介及介绍 ZAB( ZooKeeper Atomic Broadcast , ZooKeeper 原子消息广播协议)协议包括两种基本的模式:崩溃恢复和消息广播。当整个服务框架在启动过程中,或是当 Leader 服务器出现网络中断崩溃退出与重启等异常情况时,ZAB 就会进入恢复模式并选举产生新的 Leader 服务器。当选举产生了新的 Leader 服务器,同时集群中已经有过半的机器与该 Leader 服务器完成了状态同步之后,ZAB 协议就会退出崩溃恢原创 2022-02-02 11:00:00 · 182 阅读 · 0 评论 -
Java面试题之:一致性算法之Paxos
Java面试题之:一致性算法之Paxos简介一、Paxos 三种角色二、Paxos 算法分为两个阶段简介 Paxos 算法解决的问题是一个分布式系统如何就某个值(决议)达成一致。一个典型的场景是,在一个分布式数据库系统中,如果各节点的初始状态一致,每个节点执行相同的操作序列,那么他们最后能得到一个一致的状态。为保证每个节点执行相同的命令序列,需要在每一条指令上执行一个“一致性算法”以保证每个节点看到的指令一致。zookeeper 使用的 zab 算法是该算法的一个实现。 在 Paxos 算法中,有三种原创 2022-02-01 11:00:00 · 283 阅读 · 0 评论 -
Java面试题之:柔性事务
Java面试题之:柔性事务简介一、两阶段型二、补偿型三、异步确保型四、最大努力通知型(多次尝试)简介 在电商领域等互联网场景下,传统的事务在数据库性能和处理能力上都暴露出了瓶颈。在分布式领域基于 CAP 理论以及 BASE 理论,有人就提出了 柔性事务 的概念。CAP(一致性、可用性、分区容忍性)理论大家都理解很多次了,这里不再叙述。说一下 BASE 理论,它是在 CAP 理论的基础之上的延伸。包括 基本可用(Basically Available)、柔性状态(Soft State)、最终一致性(Ev原创 2022-01-31 11:00:00 · 1023 阅读 · 0 评论 -
Java面试题之:三阶段提交协议
Java面试题之:三阶段提交协议一、简介二、CanCommit 阶段三、PreCommit 阶段四、doCommit 阶段一、简介 三阶段提交( Three-phase commit ) , 也 叫 三 阶 段 提 交 协 议 ( Three-phase commit protocol),是二阶段提交(2PC)的改进版本。与两阶段提交不同的是,三阶段提交有两个改动点。1、引入超时机制。同时在协调者和参与者中都引入超时机制。2、在第一阶段和第二阶段中插入一个准备阶段。保证了在最后提交阶段之前各参与节原创 2022-01-30 10:30:00 · 333 阅读 · 0 评论