1、mysql
- 索引
- 聚簇
- 非聚簇
- redo,undo,binlog
- 事务acid
- 隔离机制
- mvcc
两段锁协议
- explain
- Mysql索引什么时候会失效
4、spring
设计模式
:策略模式- bean的
前置、后置处理
- ioc
- di
- aop:
原理
- bean的类型:单例、多例
- bean的生命周期、加载过程
- 事务的几种传播机制 https://blog.csdn.net/csdnlijingran/article/details/80743056
- 拦截器和过滤器的区别
- 循环依赖、三级缓存 https://blog.csdn.net/csdnlijingran/article/details/86617958
- springboot、springcloud
- oauth2.0
5、网络
- url怎么一步一步访问的,用到哪些协议
- ip
- dns:查询方式2种
- 递归
- 迭代
- tcp
- arp、rarp、
arp欺骗
- tcp、udp区别
- 怎么让udp实现可靠传输
- 三次握手、四次挥手
- 为什么2次不行呢?
- 为什么3次握手,为什么挥手的时候,是4次呢
- 2MSL做了什么,TIMME_WAIT
优化后的效果,数据%
- 流量控制
- 滑动窗口协议
- 拥塞控制
- 快恢复
- 快重传
- 慢开始
- 拥塞避免
- http、https的区别
- ssl加密
- 对称加密
- 非对称加密
- https怎么实现数据安全的
- restful风格的接口
- http1.0、1.1、2.0的区别
- http的几种方法、幂等性的有哪些
- http请求、响应报文的结构
- 响应码204,304表示什么
- 网络7层OSI
- 应用层
- 会话层
- 表示层
- 网络层
- 传输层
- 数据链路层
- 物理层
- netty
2、集合类
- 哈希冲突解决方式
- ArrayList
- map有哪些
- concurrentHashMap
- 锁的实现:1.7和1.8的区别
- 数据结构:1.7和1.8的区别
- HashMap
- Hashtable
- TreeMap:底层数据结构是红黑树
- LinkedHashMap:底层数据结构
- concurrentHashMap
- TreeSet:使用TreeMap实现?我记得是~
- HashSet:使用HashMap实现,key是set存放的值,value是null值
3、并发、多线程
- 死锁、解决方案
- threadlocal原理:https://blog.csdn.net/csdnlijingran/article/details/88261200
- JUC包
- synchronize、volatile的区别、实现原理、特点
- java线程中join(),yield(),sleep(),wait(),notify(),interrupt(),run(),start()区别详解
- Java多线程学习之wait、notify/notifyAll 详解
- 线程的五大状态
- Lock、ReentrantLock、synchronized
- JAVA并发编程与高并发解决方案 - 视频第7章(J.U.C之AQS)~未整理完
- Java并发编程:CountDownLatch、CyclicBarrier和 Semaphore
- JAVA并发编程与高并发解决方案 - 视频第9章(线程池)
6、Java相关
- object有哪些方法
- 深拷贝、浅拷贝
7、其他
8、redis
- 数据类型
- 分布式结构
- 俩种持久化方式
- 快照、 仅附加文件(AOF)
- redis和memcache的区别
- redis 主从同步是怎样的过程?
- redis 的 zset 怎么实现的
- redis key 的过期策略
- redis如何实现高可用
9、分布式、一致性
10、设计模式
11、操作系统
12、jvm
- 内存模型
- 递归方法调用
- 垃圾收集方法
- 垃圾收集器
- cms、g1
- 什么时候会发生oom
- jvm常用参数
13、类加载器
- 类加载过程
- 双亲委派模型