### 美团一面凉经
面试官很和蔼,很尊重我。面试开始时,首先介绍了自己所工作的部门,当时说的太快,我听的不太清。接下来就是项目和八股了:
1、你先介绍一下自己在做项目时遇到的难点,以及你是怎么解决的。
答的稀烂,没提前准备。直接让面试官问我了,感觉面评会很差!
2、那你先说一下怎么基于拦截器进行Token的校验以及刷新,答的越详细越好。
3、为什么要用双层拦截器?
4、知道ThreadLoacl的底层原理吗?说一下。
5、知道死锁吗?解释一下死锁。
6、死锁怎么解决呢?
答了一次性申请所有资源和申请不到资源就自己释放自己的资源。面试官肯定了第二种,说不同的场景要用不同的解决方法。我甚至让面试官说一种场景,面试官被我干沉默了半分钟,说这不太好说,但还是说了一个场景。
7、解释一下通过分布式锁以及stream消息实现高并发一人一单的优化。
答的很烂,说了个大概,分布式锁实现一人一单,stream加快执行效率。
8、用到了什么分布式锁呢?
9、setnx的底层原理是什么?知道吗?
10、假如现在有三个线程来下单了,库存只有两个了,那三个线程都判断库存充足,并且都是首次下单,是不是三个线程都能判断自己可以下单成功,这时你将三个线程中的用户id和优惠券id都放到消息队列中,这个时候只能消耗两条消息,还有一条消息怎么办?
没回答上来(事实上,库存判断+是否下过单判断+减库存+写入Stream队列全部封装在一个Lua脚本中原子执行,Lua脚本具有原子性,多个线程即使并发执行EVAL命令,Redis仍会串行执行脚本逻辑,保证同一时刻只有一个线程完成判断与写入流程。)
11、说一下是怎么使用工厂模式和策略模式实现布隆过滤器解决缓存穿透。
12、解释布隆过滤器的底层原理。
13、知道MySQL吗,说一下都有哪些索引?
14、联合索引知道吗?底层是什么数据结构?
15、解释一下B+树。
16、联合索引的查询规则最左前缀法则的底层原理。
答了JavaGuide上的,通过每个索引筛选掉一部分数据。面试官说,那直接从第二个索引也能进行筛选啊,怎么解释呢?
17、说一下事务的隔离级别。
18、脏读、不可重复读和幻读。
19、场景题:N个数的文件中,怎么搜索到前10大的数字?
答的是将数据先存到DB表中,再读取就可以了。面试官说,这效率太慢了,一般不采取。
20、知道ReenTrantLock吗?说一下它的底层原理。
就回答了个CLH锁,忘记AQS了.......
算法题:股票问题Ⅲ,没撕出来,跟着carl刷到动态了,但还没刷到这一题,面试官提醒了我3次,还是不会。
反问环节
总结:人生中的第一次大厂面试,总时长1小时15分钟。自己准备的不够充分,回答问题逻辑性不够(回答的很多话都需要面试官去理解,然后问我是不是这样),很多知识点的底层原理也不太清楚。虽然结果不好,但是已经尽力了,毕竟从决定学java到现在不过才2个月,还是要多学多思考。
1、你先介绍一下自己在做项目时遇到的难点,以及你是怎么解决的。
答的稀烂,没提前准备。直接让面试官问我了,感觉面评会很差!
2、那你先说一下怎么基于拦截器进行Token的校验以及刷新,答的越详细越好。
3、为什么要用双层拦截器?
4、知道ThreadLoacl的底层原理吗?说一下。
5、知道死锁吗?解释一下死锁。
6、死锁怎么解决呢?
答了一次性申请所有资源和申请不到资源就自己释放自己的资源。面试官肯定了第二种,说不同的场景要用不同的解决方法。我甚至让面试官说一种场景,面试官被我干沉默了半分钟,说这不太好说,但还是说了一个场景。
7、解释一下通过分布式锁以及stream消息实现高并发一人一单的优化。
答的很烂,说了个大概,分布式锁实现一人一单,stream加快执行效率。
8、用到了什么分布式锁呢?
9、setnx的底层原理是什么?知道吗?
10、假如现在有三个线程来下单了,库存只有两个了,那三个线程都判断库存充足,并且都是首次下单,是不是三个线程都能判断自己可以下单成功,这时你将三个线程中的用户id和优惠券id都放到消息队列中,这个时候只能消耗两条消息,还有一条消息怎么办?
没回答上来(事实上,库存判断+是否下过单判断+减库存+写入Stream队列全部封装在一个Lua脚本中原子执行,Lua脚本具有原子性,多个线程即使并发执行EVAL命令,Redis仍会串行执行脚本逻辑,保证同一时刻只有一个线程完成判断与写入流程。)
11、说一下是怎么使用工厂模式和策略模式实现布隆过滤器解决缓存穿透。
12、解释布隆过滤器的底层原理。
13、知道MySQL吗,说一下都有哪些索引?
14、联合索引知道吗?底层是什么数据结构?
15、解释一下B+树。
16、联合索引的查询规则最左前缀法则的底层原理。
答了JavaGuide上的,通过每个索引筛选掉一部分数据。面试官说,那直接从第二个索引也能进行筛选啊,怎么解释呢?
17、说一下事务的隔离级别。
18、脏读、不可重复读和幻读。
19、场景题:N个数的文件中,怎么搜索到前10大的数字?
答的是将数据先存到DB表中,再读取就可以了。面试官说,这效率太慢了,一般不采取。
20、知道ReenTrantLock吗?说一下它的底层原理。
就回答了个CLH锁,忘记AQS了.......
算法题:股票问题Ⅲ,没撕出来,跟着carl刷到动态了,但还没刷到这一题,面试官提醒了我3次,还是不会。
反问环节
总结:人生中的第一次大厂面试,总时长1小时15分钟。自己准备的不够充分,回答问题逻辑性不够(回答的很多话都需要面试官去理解,然后问我是不是这样),很多知识点的底层原理也不太清楚。虽然结果不好,但是已经尽力了,毕竟从决定学java到现在不过才2个月,还是要多学多思考。
全部评论
这...怎么确定凉的?佬不要太悲观,这不是假期还没结束嘛,说不定明天就有好消息
佬什么时候面试的
相关推荐
05-06 09:50
门头沟学院 Web前端 点赞 评论 收藏
分享

点赞 评论 收藏
分享

点赞 评论 收藏
分享
点赞 评论 收藏
分享