1.自我介绍 2.项目(秒杀商城) 3.Redis在项目中怎么用的,怎么将库存加入到Redis的,预减库存操作怎么做的 4.如果库存只剩3件,同时有5个人进行秒杀,是如何保证不超卖的 5.Redis中的字符串底层数据结构是什么,对set进去的key,底层是如何区分其数据类型的。 6.volatile原理,底层如何实现,哪些场景下禁止指令重排序 7.synchronized原理,底层实现,锁升级原理(分别讲一下不同阶段的锁,底层怎么实现的),锁能降级吗 8.了解哪些设计模式,展开了单例设计模式,包括饿汉式、懒汉式、double check locking懒汉式 9.AOP了解吗?JDK自带的动态代理方式和CGLIB的动态代理方式有什么区别,JDK的方式有什么缺陷。CGLIB的enhancer是如何实现的 10.MySQL的MVCC机制 11.事务的特性,隔离级别有哪几种,分别解决什么问题 12.OSI七层模型,对应层分别有哪些协议 13.http和https的区别,SSL协议是怎么实现的 14.讲一下ARP协议的工作流程 15.TCP和UDP的区别,TCP如何保证可靠 16.TCP滑动窗口原理,流量控制,拥塞控制是如何实现的 17.TCP三次握手过程,每一次握手客户端和服务端的状态 18.用户态和内核态的区别,怎样从用户态切换到内核态 19.讲一讲JVM内存模型,happens-before规则有哪些 算法题 1.两个链表相加,返回相加后的链表(不允许使用额外的数据结构) 2.判断链表是否成环
2022.5.20二面 1.自我介绍 2.MySQL隔离级别有哪几种,分别解决什么问题 3.幻读是如何解决的 4.讲一下间隙锁,为什么要使用间隙锁 5.MVCC