上一页 1 2 3 4 5 6 7 8 ··· 35 下一页
摘要: 一、什么是TCC,和2PC有什么区别 TCC是Try-Confirm-Cancel的缩写,它是一种分布式事务解决方案,采用了基于业务逻辑的补偿机制,将整个分布式事务分解为若干个子事务, 每个子事务都有一个 try、confirm、cancel 三个操作,通过这些操作来实现分布式事务的执行和回滚 具体 阅读全文
posted @ 2026-07-01 20:21 jock_javaEE 阅读(8) 评论(0) 推荐(0)
摘要: 一、简介 Seata是一个阿里开源的分布式事务解决方案(Simple Extensible Autonomous Transaction Architecture),用于在分布式系统中实现分布式事务。它旨在简化分布式事务的开发和管理,帮助解决分布式系统中的数据一致性问题。 因为Seata的开发者坚定 阅读全文
posted @ 2026-07-01 17:29 jock_javaEE 阅读(6) 评论(0) 推荐(0)
摘要: 一、基础概念 Full GC(全局垃圾回收) 是指 清理整个Java堆内存(包括年轻代和老年代)以及方法区(元空间) 的垃圾回收过程。它是Java虚拟机中最耗时、对应用性能影响最大的一种垃圾回收操作,通常会导致应用程序线程的暂停 二、详细解释 要深入理解 Full GC,我们需要先了解Java内存模 阅读全文
posted @ 2025-09-27 01:55 jock_javaEE 阅读(201) 评论(0) 推荐(0)
摘要: 一、在Seata的AT模式中,事务的提交也是分成了2阶段的 一阶段 1、RM 针对本次要执行的本地事务的SQL进行解析,得到SQL的类型、修改的表以及where条件等信息 2、RM 根据 SQL 解析的结果,先进行一次查询,根据查询结果生成相应的 before image 前置镜像(变更前数据快照) 阅读全文
posted @ 2025-09-24 08:11 jock_javaEE 阅读(70) 评论(0) 推荐(0)
摘要: 一、在Innodb中,通过 MVCC 解决脏读和不可重复读,通过 MVCC+间隙锁解决幻读的 1、脏读的解决 脏读指一个事务可以读取另一个事务未提交的数据,导致数据不一致。 在读已提交(Read Committed)隔离级别下,事务只能读取到其他事务已经提交的数据版本。因此,如果一个事务在读取数据时 阅读全文
posted @ 2025-09-16 16:01 jock_javaEE 阅读(54) 评论(0) 推荐(0)
摘要: 一、基础概念 Java中的线程池本身并不提供内置的方式来保证任务的顺序执行的,因为线程池的设计目的是为了提高并发性能和效率,如果顺序执行的话,那就和单线程没区别了。 但是如果被问到想要实现这个功能该怎么做,有以下两种方式 1、使用单线程线程池 我们可以使用 SingleThreadExecutor这 阅读全文
posted @ 2025-09-16 01:31 jock_javaEE 阅读(111) 评论(0) 推荐(0)
摘要: 1、static 的必要性:全局唯一实例 问题示例(非静态): public class UserService { // 错误:每个实例都有自己的 ThreadLocal private ThreadLocal<User> userThreadLocal = new ThreadLocal<>() 阅读全文
posted @ 2025-09-15 20:47 jock_javaEE 阅读(75) 评论(0) 推荐(0)
摘要: 一、基础概念 我们说过,没办法直接在主线程的 try-catch 中捕获子线程的异常。但是,有的时候子线程中会开启一些IO链接,网络资源等,那么,如何在抛出异常的时候进行处理呢 ? 有几个方案可以实现 ? 1、使用Future 如果想要在主线程能够捕获子线程的异常,可以考虑使用 Callable 和 阅读全文
posted @ 2025-09-15 08:35 jock_javaEE 阅读(75) 评论(0) 推荐(0)
摘要: 一、基础概念 在 Java中,主线程不能直接捕获子线程抛出的异常的!主要是因为子线程和主线程是独立的执行单元, 它们的执行是并发的,因此主线程无法捕获子线程的异常。子线程的异常通常由子线程自己处理或通过适当的异常处理机制处理。 那么也就是说,以下代码是无法生效的 public class Main 阅读全文
posted @ 2025-09-15 08:16 jock_javaEE 阅读(26) 评论(0) 推荐(0)
摘要: 一、是否使用过Redis集群,集群的原理是什么 ? Redis Sentinal着眼于高可用,在master宕机时会自动将slave提升为master,继续提供服务 哨兵解决了高可用的问题,而 Redis Cluster集群就是终极方案,一举解决高可用和分布式问题 数据分区: 是集群最核心的功能。集 阅读全文
posted @ 2025-08-04 19:58 jock_javaEE 阅读(54) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 7 8 ··· 35 下一页