10.10 快手日常实习二面32min挂

#快手校招# 自我介绍

实习拷打:
1.你怎么理解熔断超时的这种治理(理解个锤子,我就是做数据看板的功能)
2.你了解比如说哪些技术方案去实现熔断(没了解过乱说一通)

项目:
讲一下你项目的限流怎么做的

场景:
1.有个学生表,有主键id,学号,姓名,还有其他等信息
业务场景:根据学号查姓名,学号也有索引,发现耗时比较久,可能在1s以上,我们需要优化到10ms以内,你有哪些思路去解决这个问题?(这个怎么答?有没有佬能给个方案)
2. 1中这个sql的执行过程
3. 刚刚这个sql根据学号查询,描述一下它在索引方面如何执行的。(反问说我答得太少了,这块有段时间没看不太熟悉了)

手撕:无重复字符的最长子串(开始有点小bug,后面调对了)
怎么日常实习要求也这么高啊,以为有段美团实习会轻松很多,nnd问的这么难
#快手日常实习#
全部评论
第一个除了覆盖索引还能怎么做?
点赞 回复 分享
发布于 10-12 17:50 陕西
理论上学号是唯一索引,有回表也只有一个id,感觉不可能1s以上
点赞 回复 分享
发布于 10-13 10:55 上海
佬没去猿辅导么
点赞 回复 分享
发布于 10-13 15:54 上海
快手就是喜欢问场景题想起之前面试被拷打的场景了。八股和算法题都打的挺好,场景题不会第二天直接秒挂
点赞 回复 分享
发布于 10-14 16:11 上海

相关推荐

10-09 18:26
已编辑
东南大学 Java
自我介绍问实习做的慢查询的业务背景、怎么优化的八股:1.mysql索引为什么要使用b+树,而不使用b树、AVL2.为什么千万级别的数据b+树只需要三到四层?(具体的计算过程忘记了,这个问题是上个问题自己引出来的,长记性:不要给自己挖坑)3.最左匹配原则:联合索引(a,b,c,d),判断各个条件下走索引的情况:a=1 and b = 2 and d = 3 and c =4a=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多路复用不会,没说我哪不足,哎感觉要挂我)总结:无所谓过不过,反正也实习不了,差不多半个多月没面试,这次面试基本都是八股而且问的还挺细的,比较喜欢这种拷打八股细节的,正好检验自己的基础,这个面试官喜欢根据上个问题的回答提问下个问题,节奏比较好把握,还有回答问题不要给自己挖坑,自己说着说着嘴就瓢了,学会引导面试官跟着你的节奏,最后还是觉得自己表达能力确实不行,加油吧!)更新:一面已过 #快手实习面经#
牛客631990852号:不是吧 哥 不去实习还接着面啊 你太无敌了
点赞 评论 收藏
分享
10-12 20:39
已编辑
虎牙_后端(实习员工)
9.30 一面:自我介绍Long \ long 的区别、默认值,int 和 long 的区别String \ StringBuilder \ StringBuffer 有什么区别?进程和线程有什么区别?索引的作用是什么?手写几个简单 SQL ,有用到索引吗,什么时候会索引失效?LEFT JOIN 和 INNER JOIN 有什么区别?Linux 如何查看一个 log 文件的内容?如何搜索文件里的内容?通过 uid 搜索 log 文件打印出来下面的堆栈信息?黑盒测试和白盒测试是什么?黑盒测试和白盒测试有什么测试方法?朋友圈点赞功能有哪些测试用例?还知道其他哪些测试方法?什么是缓存穿透、缓存雪崩、...
一笑而过2222:一、Java 相关 -  String 不可变,适合少量操作。 -  StringBuilder 可变、非线程安全,适用于单线程大量操作。 -  StringBuffer 可变、线程安全,适用于多线程环境。 二、操作系统相关 - 查看 log 文件内容可用 cat 、 more 、 less 命令。 - 搜索文件内容: grep "text" logfile.log 。 - 搜索 UID 并打印堆栈信息: grep "uid_value" logfile.log | awk '{print $NF}' 。 三、数据库相关 - 索引提升检索速度、保证唯一性,如 SELECT * FROM table WHERE id = 1; 可能用索引。 - 索引失效情况:索引列函数操作、 LIKE 以通配符开头。 -  INNER JOIN 返回匹配行, LEFT JOIN 返回左表所有行及匹配右表行,无匹配用 NULL 填充。 四、测试相关 - 黑盒测试关注输入输出,白盒测试关注内部逻辑。 - 朋友圈点赞测试包括点赞、取消点赞、并发点赞、刷新显示、网络异常等。 - 其他测试方法有灰盒测试、性能测试、安全测试等。 五、缓存相关 - 缓存穿透:查询不存在数据,解决方法有缓存空结果、用布隆过滤器。 - 缓存雪崩:大量缓存同时失效,解决方法是分散过期时间、用锁机制。 - 缓存击穿:热点数据过期时高并发请求,解决方案为加锁、设置永不过期。 六、算法相关 - 比较版本号按点分割成数组,逐位比较数字大小区分版本高低。
点赞 评论 收藏
分享
5 34 评论
分享
牛客网
牛客企业服务