2021.3.29 下午面试 四十分钟 电话面试
1.自我介绍(我的项目一个是工作流的,一个是flink的)
2.先问工作流的,问如何实现,节点失效怎么办,如何中继执行(就是回答项目的一些问题)
3.问flink的算子有哪些(说很久不用flink,之前就是入门,不是很了解 )然后说那就不深入问flink了
4.算法题:问一个数组两两元素重复,找到唯一一个不重复的。(因为是电话面,我没听清两两重复,以为有单数重复的,然后只说了那些空间和时间很差的,按理来说是重复抵消)
5.算法题:40亿个数据,找在里面找一个。(因为面试官是搞大数据的,但是我对大数据不是很懂,他说其实让我往hadoop方向想,但是我不懂啊然后知道我不了解大数据,就说问其他的吧。不过最后问了一下同学,好像是分治,设置并行度)
6.协程的概念 (答协程的切换不需要系统内核资源)继续追问线程的切换是怎么切换的(答不上来,说可能进行内存释放和重新分配)
7.TCP在哪一层(传输层)追问端口 协议呢?(没答上来,他告诉我还在传输层)然后我慢慢讲自己知道的七层模型,往自己了解的方面引导,然后面试官听了一些还行,然后提到三次握手四次挥手
8.问为什么要第四次挥手?(服务器需要获得客户端的最后一次的ACK,又将了time wait 2msl)
9.问大量的close wait如何定位问题?(我只想到了第三次挥手服务器的close wait,没想到第二次的 直接说是客户端的问题。。。然后提醒我要先定位是客户端还是服务端的问题)
10.java中有很多锁,很多关键字,讲一讲自旋锁怎么实现的?(因为刚好看了sy关键字的底层,所以以这个为例讲了锁升级策略,因为升级到轻量级锁就是自旋锁,使用CAS实现)主要还是想往自己会的方向多说一点,但是说的都是跟问题有关的。
11. 继续追问sy关键字怎么升级到轻量级锁(第一次获取进行标记,但是最后标记不取消,第二次获取升级轻量级锁)
12. NIO和BIO的区别?(我说我不知道这两个,我说知道五个IO模型,然后说出来,面试官提醒我BIO就是你说的阻塞模型。。。。)
13.问我BIO是怎么阻塞的?(我就说如果请求数据没全,就直接进行阻塞)但是继续追问操作系统层面是如何阻塞的(没答上来)
14. 反问:不知道自己投的什么部门,问一下。感觉面试官说的很详细。。。还说如果有后续会有另一个同事联系我。
总体来说就是问的很意外,后来才知道面试官是搞大数据的,所以开始问我大数据的问题。我感觉就是表面层问题问我基本都行,但是追问都很难答上来。遇到自己不会的,我会先说自己不知道,然后往相关问题的自己懂的方向说。总体感觉面试官最后说的话有些想给我机会的意思,我同学挺着也说像是有点意思的意思,但是还是很悬,害。感觉五五开吧。但是感觉面试官态度挺好的。(其实很奇怪java和数据库的问题一点没问,其实那还是我比较擅长的,害)
全部评论
(3) 回帖