垃圾回收
垃圾回收 新生代(标记复制):serial + parnew + paralle Scavenge 老年代(标记整理):serialold + paralleold + CMS(标记清除) 共用:Z1…
JIT优化技术
JIT优化技术 1.作用: 配合解释器(将字节码逐行执行)执行代码。 2.如何检测热点数据:方法计数器(统计方法)+ 回边计数器(统计for while循环) 3.如何优化: 3.1 方法内联:将小方…
三色标记法
三色标记法(标记算法) 1.基本概念 白色(未被标记,默认)、灰色(还有引用的对象)、黑色(被标记完的)。 2.背景 原始的垃圾标记算法比如计数器法(无法解决循环依赖问题)、可达性分析法(整个分析都需…
循环依赖
循环依赖 如何解决:三层缓存(1.完整Bean 2.半成品Bean 3.Bean工厂)   为什么需要三级缓存,二级缓存不行: 三级缓存(存储用于创建代理对象的 ObjectFactory)…
spring事务的传播机制
spring事务的传播机制 1.require(默认) 作用:如果当前存在事务,则加入该事务;如果当前没有事务,则创建一个新事务。 场景:大多数业务方法都使用此传播行为。 解释:如果 methodA …
AOP实现方式
AOP实现方式 参考文章 原理:在ioc中创建了一个原对象的代理对象,而这个对象是AOP增强过的。   动态代理 JDK 1.1 实现接口 interface UserService{ vo…
MVCC
MVCC 实现:undolog + 隐藏字段(trx_id, roll_prt)+ readView(活跃事务ids, 最小活跃事务id, 预分配id, 创建者事务id)只记录这一瞬间的readVie…
MySQL索引面试题
1. 如何做SQL优化 1.1 定位慢SQL 开启慢查询 slow_query_log = 1 long_query_time = x(s) 1.2 优化 1.2.1 查询优化 指定具体列代替* 1.…