10.8 快手日常实习一面 50min

自我介绍
问实习做的慢查询的业务背景、怎么优化的

八股:
1.mysql索引为什么要使用b+树,而不使用b树、AVL
2.为什么千万级别的数据b+树只需要三到四层?(具体的计算过程忘记了,这个问题是上个问题自己引出来的,长记性:不要给自己挖坑)
3.最左匹配原则:联合索引(a,b,c,d),判断各个条件下走索引的情况:
a=1 and b = 2 and d = 3 and c =4
a=1 and b = 2 and c > 1(这里说太快了,想都没想就说了,说成c不会走索引,实际应该是c会走,但d不走,这里都会犯错不该)
4.mysql事务特性以及怎么实现的?
5.MVCC能保证哪个事务隔离级别(读已提交和可重复读,这里自己提了两种隔离级别read view生成时机的不同,好!)
6.MVCC有哪些好处(我觉得最重要的是并发读无需加锁和隔离性吧,还有解决脏读和可重复读这些)
7.java基础数据类型(平时没怎么用过byte忘记还有这个了,说应该是七种,实际是八种,我真是癫了)
8.int占几个字节(4个字节,算是猜对了)
9.讲讲ConcurrentHashMap(jdk1.7和jdk1.8的都说了,对比不同和提升)
10.什么情况下链表会转成红黑树,红黑树什么情况下会转为链表(8和6,这里提了一下为什么是8和6,前面看过)
11.concurrentHashMap的get方法是否加锁?(没有加锁,提了一下底层用来volatile来修饰value和size,保证可见性)
12.那你解释一下volatile这个关键字(讲了讲可见性怎么实现的,说了一下总线嗅探,以及MESI协议)
13.那你了解ArrayList和hashMap的扩容机制吗?(ArrayList很久没看了,就记得是扩为1.5倍,HashMap讲的比较详细)
14.redis的多路复用有了解过吗?(不会,有了解过但忘记了,半年前看的早忘了)
15.redis的分布式锁你的理解(因为我是项目中对redisson分布式锁进行封装,我觉得这种问题问你理解就是想看看你为什么要选择这种分布式锁实现方式,应该要对比redis本身的setnx的缺点,还有为什么选择redisson分布式锁,比redis原生的好在哪,我觉得问理解还可以说分布式锁的意义,总之这种题比较开放)

手撕:LRU,写完了面试官提醒忘记删map的元素了,最后说没啥问题

反问:
问业务,面试官挺好的,讲的比较细了,但发现跟我在美团实习的部门做的东西差不多
反问表现,说还不错(nnd,我索引那块答错了还有redis多路复用不会,没说我哪不足,哎感觉要挂我)

总结:
无所谓过不过,反正也实习不了,差不多半个多月没面试,这次面试基本都是八股而且问的还挺细的,比较喜欢这种拷打八股细节的,正好检验自己的基础,这个面试官喜欢根据上个问题的回答提问下个问题,节奏比较好把握,还有回答问题不要给自己挖坑,自己说着说着嘴就瓢了,学会引导面试官跟着你的节奏,最后还是觉得自己表达能力确实不行,加油吧!)

更新:一面已过
#快手实习面经#
全部评论
不是吧 哥 不去实习还接着面啊 你太无敌了
5 回复 分享
发布于 10-09 15:56 上海
别集邮了,哥😭
3 回复 分享
发布于 10-09 16:10 北京
能请问一下佬手撕LRU是力扣146那种的吗
点赞 回复 分享
发布于 10-09 16:27 湖南
厉害,面霸哥[面经[MARK]
点赞 回复 分享
发布于 10-10 10:08 北京
感觉快手的面试官好像是同一个人,看了很多都是差不多的这几个题目
点赞 回复 分享
发布于 10-11 23:06 湖北
想请教一下佬这些八股是天天都背吗,我都是背完就忘😂
点赞 回复 分享
发布于 10-12 09:48 四川
佬在哪投的啊
点赞 回复 分享
发布于 10-16 21:42 安徽
佬真心请问这些八股是哪里复习到的
点赞 回复 分享
发布于 11-10 14:53 北京

相关推荐

17 97 评论
分享
牛客网
牛客企业服务