1、java基础(之前我们看过的基础)
-----------------------------------------------------本周----------------------------------------------------------------------
2、redis (2天)
(1)Redis的五大数据结构常用操作命令(其中举出两种基本数据类型的应用场景 然后说一下redis中 hash的底层 底层实现了ziplist压缩列表的结构 面试官喜欢问)
(2)Redis持久化RDB和AOF及Redis集群模式(面试官也会问redis怎么保证高可用 也是再问持久化和集群)
(3)内存淘汰策略 八种(LRU/LFU算法)
(4)删除过期键策略 三种
(5)redis和mysql如何保持数据一致性
(6)缓存穿透、缓存击穿、缓存雪崩
(7)Redis 与 memcached 相比有哪些优势(memcached仅仅一种数据类型 memcached不支持持久化)
(8)redis分布式锁使用场景以及底层原理
3、mysql (2天)
(1)索引原理以及数据结构(B+树)
(2)MySQL 执行引擎(innodb和myisam)
(3)mysql事务(脏读、不可重复读、幻读)
(4)mysql事务隔离级别(读未提交、读已提交、可重复读(默认)、串行化 )
(5)MySQL 的 gap 锁(解决事务用的)
(6)MySQL 的主从同步原理
(7)分库分表
(8)慢 SQL 定位及优化(explain )
(9)buffer pool缓存池原理
(10)Mysql深度分页问题
(11)Mybatis的一级缓存和二级缓存
(12)mysql binlog详解(问的少)
4、锁、多线程、线程池 (3天)
(1)熟悉CAS(无锁概念)
(2)Synchronizes同步机制(悲观锁)
(3)JUC包、AQS(乐观锁)
(4)并发锁:ReentrantLock底层原理 同步工具:countDownLatch原理
(5)多线程、线程池底层原理以及工作原理
(6)CompletableFuture异步编排
----------------------------------------------------下周-----------------------------------------------------------------------
5、spring、springboot(自动装配)、springMVC、springCloud
6、mq消息中间件
(1)分布式事务
7、JVM调优
(1)运行时数据区、垃圾回收算法、垃圾回收器、常用配置参数
8、分布式框架(dubbo)