1.自我介绍2.介绍一下项目3.为什么消息队列可以降低响应时间4.redis怎么实现分布式锁什么指令实现setnx怎么操作 为什么要加px过期时间怎么设置Lua怎么实现原子操作 pipeline不行吗能同时失败回滚吗,那么为什么是原子操作redis对lua脚本怎么操作以保证它的原子性redis是多线程的吗lua脚本是不是不会被打断5.什么是拦截器 原理AOP原理6.docker 怎么解读镜像 镜像存储结构7.rabbitmq丢消息怎么办(网络问题没有被消费到)重复投递怎么办 怎么在消费端保证不重复插入有看过中间件的源码吗8.jwt header payload signature每个部分具体怎么编码和加密signature怎么防止篡改9.websocket 和 http的区别协议格式上有什么区别,为什么都是基于tcp但是一个是全双工一个是单向10.threadlocal原理 key是什么怎么保证线程隔离threadlocal怎么回收11.类什么时候被加载类加载过程(元空间类元信息读取 检验 )12.锁和cas轻量级锁和重量级锁区别,为什么降低了上下文开销13.TCP四次挥手过程time-wait存在的意义三次握手可以改成两次吗(听成了四次挥手可以改成三次挥手吗)14.TCP/IP四层模型每层有哪些关键元素端口是哪一层的(传输层 线程到线程)15.算法 O(1)时间复杂度下判断链表是否回文16.反问