一面:1.浅拷贝和深拷贝2.JVM垃圾回收算法3.JVM堆、栈、方法区存储的数据4.元空间的优点和缺点(缺点:元空间存储类加载器,回收后会产生内存碎片)5.HashMap为什么线程不安全6.红黑树的结构7.Hash索引和B+树索引的区别,优缺点8.非聚簇索引一定会出现回表吗9.mysql主从复制10.redis的持久化方法11.redis内存淘汰策略12.全局性的淘汰策略和设置了过期时间的淘汰策略有什么区别13.穿透,击穿,雪崩14.消息队列,为什么项目里用rabbitmq,有什么优点15.死信队列16.手撕:删除列表最后第n个节点,二叉树先序遍历二面:问项目1.数据库一个字段设计为varchar类型,但插入int类型数据,会有什么问题2.用户撤单怎么处理,先处理状态还是先处理撤单操作3.两个线程交叉打印4.两个字符串转换需要操作的最小次数,可删除,插入,修改5.Redis怎么保证可靠性6.遍历链表并删除指定值7.多线程下怎么统计方法的调用次数(不加锁)二面又忘记录了,全凭记忆G了已经