一面:自我介绍项目介绍1.布隆过滤器用在项目哪个地方?布隆过滤器去重的原理?这个布隆过滤器能装多少短链接,如何设计的?2.项目的QPS是多少?压测过吗?3.为什么要用消息队列?不用消息队列有什么坏处?4.双重判定锁解释一下,说一下Redisson的原理5.为什么要用线程池?线程池的底层原理6.synchronized和reentrantlock的区别,什么是juc7.说下jvm,jvm的哪些区域会被回收,方法区会被回收吗?8.如果jvmgc时间过长,应该怎么排查?二面:自我介绍+项目介绍1.长链转短链的流程,用户怎么通过短链接访问长链接的2.布隆过滤器的底层原理,怎么考虑布隆过滤器的参数设置的,如果出现误判怎么办?3.为什么要用消息队列?4.MySQL的数据是怎么存储的,底层数据结构用的什么,b+树的特点是什么5.redis的底层命令了解吗?说一下redis的网络模型?6.MongoDB了解过吗?7.jvm的垃圾回收算法说一下?8.一道算法题,求矩阵最小路径(做的太久了还用的dfs,被面试官说刷题太少了,沉淀算法了😭)更新: oc了,感觉被一面面试官捞了一把😂