20个常见Java面试题

Java面试题:
1.hashmap数据结构,线程安全问题的原因,发生时机,
扩容机制等,分1.7和1.8分别描述
2.concurrenthashmap数据结构实现原理,分1.7和1.8描述
3.cas的实现原理,juc的相关内容
4.spring的启动流程,bean的生命周期
5.设计模式在工作中的使用,Spring中用了哪些设计模式
6.jvm内存结构,gc的方法,垃圾回收器等
7.类的加载流程,加载机制
8.zookeeper如何保持一致性,zab算法流程
发散:cap理论是什么?zk满足了哪两个条件?
还有哪些注册中心,他们分别是什么,哪些条件优先?
9.消息队列有哪些,各自的特点,运行原理,他们之间的区别
10.消息队列的高可用性如何实现的?一致性,幂等性,事务如何实现,他们各自的局限?
11.redis的数据结构有哪些?他们的底层原理3.是什么?应用场景?过期策略和淘汰机制有哪些?
12.redis常见问题:雪崩,穿透,击穿,一致性等。如何解决?双写和写删除
13.redis 的集群模式有几种?各自特点是什么?
14.分布式锁,分布式事务,分布式session 是什么?有哪些实现方案?
15.MySQL 的索引有哪些类型?索引优化方法?索引失效的场景?
16.mysql的事务原理,锁机制,如何避免死锁?
17.优化索引的流程?explain等,索引覆盖,防止回表
18.mysql主从模式相关,分库分表相关
19.elasticsearch的运行原理和优化?包括读写索引,选主流程,索引优化,集群优化
20.微服务技术栈,springcloud生态相关技术

你可能感兴趣的:(笔记)