度小满一下午三轮面试
- 接口和抽象类的区别
- Redis IO你了解多少,有没有看过源码,水平触发和边缘触发有什么区别,Linux使用epoll,那Windows和Mac呢;
- epoll的底层是怎么做的,红黑树+链表?
- MySQL为什么不用B树,联合索引(a,b,c,)ac能用到索引吗,回表是怎么回事,分库分表是如何做的,分库的目的是什么,分表你们用的什么方法?
- 事务的隔离级别(RR级别下真的可以解决幻读吗),如何创建索引,事务的四大特性,Java的HashMap的源码,什么时候扩容,put的流程,扩容流程。
- Spring Bean的创建流程,SpringBoot的启动流程,MyBatis的#和$的区别。
- Zookeeper和Eureka的区别有哪些,Maven用命令怎么查找一个jar的依赖,Git合并分支,
- ConcurrentHashMap1.7和1.8的区别,Redis分布式锁的实现,Redis的数据结构以及应用场景,
- Http请求头有哪些参数,Linux目录下查找一个包含指定字符串的文件路径,
- JVM新生代垃圾回收器有哪些,JVM垃圾回收算法有哪些,
- volatile,static,final底层实现,synchronized和ReentrantLock的区别。还问线程池7大参数以及作用,为什么要有线程池,线程池的优点,线程池的执行原理,AQS的获取锁,释放锁的流程。
- 算法:删除倒数第k个节点,合并有序数组,数字转字符串(2021转成两千零一)
- 如何实现延迟消息的消息对列,问我看没看过rocketMQ的源码?
- 评价是深度建议提升一下,去看看redis,mq这种中间件的源码。。
- 有点困,先睡一觉