JAVA面试:目录篇


jdk的垃圾回收算法,年轻代,老年代分别是什么

如何排查生产环境的OOM

jvm的内存模型

java如何加载类的,哪种情况下不需要用java的双亲委派模型来加载类(java的类加载原理)

hashMap的原理,1.7和1.8的区别是什么,如何保证并发安全

concurrentHashMap的并发原理,1.7和1.8的区别是什么


线程池的原理,运行顺序,java队列原理,几个方法有啥区别(arrayblockingqueue和linkednlockqueue,首尾,锁,多少个锁)

线程池的错误怎么排查(阿里规范里有,不能用原生的ThreadPoolExecutor,要重写线程池,过程和几个重要的点)

synchronized的原理,锁如何升级的

juc的lock实现原理

juc的并发工具类(AutomicInteger,CountDownLatch,CyclicBarrier,Condition,Semaphore)


dubbo的原理,负载均衡策略

dubbo的通信模型,序列化

dubbo的spi机制

dubbo的缓存原理

NIO的模型说一下


mysql的索引原理,B+树原理,索引类型和区别

mysql的隔离级别,如何解决幻读

mysql的mvcc说一下

mybatis的插件原理说一下


redis的数据类型

redis的数据如何保存,保存的命令,保存发生的时间点

redis的高可用如何做,主从模式,哨兵模式,原理,如何配置


说一下消息队列,rabbitMQ,rocketMQ ,延迟队列有用吗

ES的索引如何实现

ES如何实现数据同步(通过mysql的binlog来实现可插拔式的,无代码侵入的数据缓存至ES)


ZK的数据一致性如何实现,CAP理论,算法是什么(讲讲paxos算法)

Eureka保持高可用的原理

SpringCloud的hystrix如何实现服务降级的

原文地址:https://www.cnblogs.com/JMrLi/p/13925938.html