一面
ip hash和一致性hash一致性hash虚拟节点异步,失败重试机制怎么做,有没有做幂等发送的事务失败了,redis怎么回补库存系统重试,两条相同消息一起到了消费者guava令牌桶底层实现太多流量打在验证码系统java垃圾回收java为什么分为年轻代老年代老年代有两种回收算法,区别哪些数据当作gc root哪些对象不该被回收,怎么判断以后还会使用线程池mysql索引b+树相比b树一个页读出来有我不需要的数据会怎么样redis跳表和红黑树sql注入mybatis怎么处理sql注入spring底层怎么实现依赖注入和控制反转跳表基于二叉树,方便范围查询
二面
一致性hash比ip hash好在哪加了一些机器会怎么样为什么用到redis分布式锁,为什么用redis+luaredis缓存缓存和db数据怎么做同步输入url会发送什么缓存雪崩缓存击穿怎么解决,面试官说可以设置另一个key,然后把流量慢慢的逐步切到另一个缓存上,搞一个开关,比如每次百分之十固定页面访问的不是ajax,得到的时nginx上的html代码,浏览器对服务器返回的html进行解析变成可视化的图片和文字,
登录输入数据点登录以后会怎么样,登录以后记录了登录的状态,怎么实现(session,sessionid)mysql事务特性,隔离级别阿里这些大厂用什么级别,读已提交什么叫可重复读,举个例子在读已提交隔离级别下,如果出现了不可重复读的情况,第二次读到的是什么数据,是另一个线程改过的吗?回表查询发生在什么情况下,尽量多回表还是少最左匹配原则动态数组ArrayList和数组有什么区别,为什么建议设置初始长度(感觉是避免多次扩容)解决hash冲突的办法,除了链表和红黑树算法:给一个字符串数组比如说[“777”,“7”,“77”,“77”],和一个目标字符串"7777",从字符串数组中取两个字符串拼成目标字符串,求有多少种拼法。
面试官提醒我用hashmap
三面
深度学习有什么算法spring注解怎么实现redis的sds的len怎么实现



