MySQL

  1. MySQL:重点掌握ACID 事务与隔离级别实现

I: 隔离性-> 使用锁实现
AD:原子性和持久性 -> 主要是UndoLog实现
C:一致性 -> 主要是Redo Log实现

  1. MVCC机制
  2. 索引失效场景
  3. 最左前缀原则
  4. B+树与其他数据结构的优势和树高的计算(对比hash、b树等数据结构)
  5. InnoDB与MyIsam区别
  6. 了解集中其他存储引擎:memory与archive(知道就行)
  7. 索引下推原理
  8. InnoDB的行级锁:next-key lock、gap lock以及记录锁
  9. MySQL执行语句会发生什么? -> 连接器-分析器-优化器-执行器-存储引擎
  10. 二级索引与联合索引存储方式
  11. 数据库的主从同步原理
  12. MySQL三范式
  13. MySQL的分库分表原则

Redis

  1. Redis数据结构底层:SDS、listpack、跳表、压缩列表、quicklist
  2. Redis的GEO、bitmap、HyperLogLog原理
  3. Redis为什么快?
  4. Redis与Memcached区别
  5. Redis常用场景
  6. Redis的持久化方式(AOF和RDB)
  7. AOF和RDB原理
  8. Redis的过期删除策略和淘汰策略
  9. Redis的如何保持数据库与缓存双一致
  10. 缓存穿透、缓存击穿、缓存雪崩、缓存预热以及缓存降级
  11. Redis的单线程和多线程的理解
  12. Redis的事务
  13. Redis的主从、哨兵、集群模式原理
  14. Redis的分布式锁细节
  15. RedLock原理

计网

  1. 三次握手和四次挥手原理以及为什么是三次和四次
  2. HTTP 1.0 1.1 2.0的区别
  3. HTTPs和HTTP区别
  4. DNS解析过程
  5. TCP的拥塞控制、流量控制、滑动窗口
  6. TCP和UDP区别
  7. TCP的MSS与IP的MTU区别
  8. 常用状态码:200、400、404、500…
  9. OSI七层协议
  10. SYN泛洪攻击
  11. 输入URL会发生什么?
  12. 如何考虑分布式Session问题?

Java虚拟机

  1. 双亲委派机制
  2. 为什么要打破双亲委派机制
  3. JVM运行数据区
  4. 类加载的过程:加载-验证-初始化
  5. 类加载器:ClassLoader:bootstrap、ext、sys
  6. 为什么需要自定义类加载器
  7. minor GC和Full GC触发的条件
  8. 引用计数算法、GC roots(可达性分析算法)
  9. 标记复制算法、标记压缩算法、标记清除算法
  10. Serial、Serial old 、parallel scaveage、parNew 、CMS、G1垃圾回收算法
  11. remember set与Card table作用
  12. Java对象的强引用、软引用、弱引用与虚引用
  13. Java对象栈上分配、逃逸分析以及标量替换
  14. Java对象访问方式:句柄访问以及直接访问
  15. Java分配对象的方法:指针碰撞与空闲列表
  16. OOM问题