前言
今天刚面试完一个,感觉年前应该不会再有面试,所以先把目前的面试问题总结了一下,有的面试里的问题记得不是很清楚了,不是很完整。最近一段时间面试了几家互联网公司,陆续通过了阿里、头条、美团,的面试,基本上面试的公司都通过了,所以在这里想分享一些自己面试总结的经验给大家,希望能帮助大家在金三银四期间拿到心仪的offer。
云原生k8s一面
自我介绍
读研还是直接工作?工作开局做算法题,两数之和,哈希表轻松解决Arrays.sort使用了什么排序算法快排的空间复杂度+推导除了快排还有哪些排序算法排序算法的稳定性问我常用的数据结构,答了个hashmap如果让我实现一个hasmap,会怎么做进程和线程的关系和区别进程和线程共享了资源,线程也自己独有一些资源,那么具体哪些资源是共享的,哪些资源是线程独有的TCP和UDP的区别TCP怎么做到可靠传输16点提到了滑动窗口,所以追问滑动窗口除了用在可靠传输的保证,还问了有什么作用,我答的是流量控制追问滑动窗口流量控制怎么实现的,这里除了课本上的那种一开始两倍增长然后再线性增长,然后再减到一半,然后我追答了一个bbr,所以19问追问bbr追问bbr相比于传统流量控制算法的优点问mysql使用的时候有几种可用的索引方式(业务层面)普通索引在实现的时候可以用哪些技术来实现除了innodb还用过其他引擎吗myisam索引有没有什么地方用到的如果因为索引选择错误而导致了选择索引错误,那有什么办法修正呢,我回答了analyasexxx和在sql语句里面强制指定索引什么是SpringIOC容器?IOC的优点是什么?BeanFactory–BeanFactory实现举例Spring由哪些模块组成?Redis相比Memcached有哪些优势?使用Redis有哪些好处?Redis的持久化机制是什么?各自的优缺点?Pipeline有什么好处,为什么要用pipeline?问项目
为什么很多项目都选择Spring?为什么在项目中使用ioc?Spring的生命周期Spring自身有什么地方使用了aop么?netty有实际使用过吗问epoll原理问我gc调优经验,说了一个内存泄漏排查,还有上线容量估算排查系统性能问题的时候,用什么思路和工具,uptimetoppidstatnetstatvmstatdstatsar-nDEV能答的工具还有一些字段的含义都丢出去了,然后说了软中断硬中断iowait进程之间wait过高的时候,排查的思路K8S了解多少,项目中用过吗最近在学什么在java中守护线程和本地线程区别?Java中用到的线程调度算法是什么?在Java中Executor和Executors的区别?JavaConcurrencyAPI中的Lock接口(Lockinterface)是什么?对比同步它有什么优势?多线程同步和互斥有几种实现方法,都是什么?得出一个经验,面试的内容和难度可能会随着你的回答而变化,阿里的算法两数之和是真的舒服。
云原生k8s二面
(2月19早上9点半面的,电话面)
1.你的学习经历?
2.问项目
3..K8S调度pod到节点的原理
4.你项目有用到K8S吗?
5.你说说你知道的K8S原理,尽可能详细的?
6.问我项目里的自定义集群怎么做的?
7.你看过K8S源码吗?
8.然后追问了为什么不用?我答的因为我对接的那个开源产品是要修改他源码的认证流程的,我当时还不具备去看那个产品和K8S相关的源码,第一反应是不要去接K8S的8.追问其他项目细节(细节我大概都对上了)
9.如果现在让你把那个项目用K8S来做的话你会怎么做?
10.用户态和内核态的区别
11.然后问了如果每个用户都需要一个硬盘空间的话,应该用什么
12.容器了解吗
13.docker容器实现资源隔离原理
14.针对我项目问:接入K8S之后,网关的转发逻辑怎么处理
15.java进程和go进程应该怎么通信
16.做了道回溯题,比如下面这个矩阵,找出目标的字符串,ALBABA,返回true或false,下面这个的话从00开始往下走然后一直往右走就是了ABCDELBABAWDADL
17.TCP和UDP的区别
18.问我为什么学了K8S
19.因为18问的说法,所以这一问追问了dubbo的什么东西可以直接在k8s做
20.反问环节,你们部门是做什么的,这里面试官回答的是弄K8S的。
云原生k8s三面
(2月19下午4点22打电话约我下午5点面试,稍微有点匆忙,视频面)
1.自我介绍(我就说了三句,他觉得有点简洁)
2.是怎么学习一些技术的
3.问项目?
4.追问那如果现在让你技术选型你会怎么选?(我会选择开源产品本身支持的一个可配置的网络代理)
5.nginx的缺点?
6.还有其他落地的项目吗?
7.详细的追问了项目里的认证流程的细节
8.问了项目里其他人怎么分工
9.那像这样的话,秒杀和正常购物流程怎么共存呢,你如果是用这种方案去保证的话,是没有办法保证秒杀不影响正常购物吧
10.问我的秒杀方案
11.追问那怎么保证redis的数据和数据库一致呢?
12.之后打算工作还是读研,还有之后的学习计划
13.为什么你觉得redis原子性的自增+RocketMQ会比直接操作mysql的效率高呢?
14.你还投了阿里的其他部门吗?
15.为什么学k8s?和我二面答的差不多
16.问我项目里面为什么网关选择openresty(nginx+lua)?
17.kubectl去更新一个pod的配置的时候,kubenetes发生了什么
以上就是阿里三面总结的问题,为了防止你们面试的时候碰壁,小编这里也整理了不少金三银四需要用到的真题以及资料的分享,获取完整面试题和答案解析可以转发后私信关键字获取
最后
篇幅有限,其他内容就不在这里一一展示了,上面的面试冲刺宝典整理不易,欢迎大家一起交流,喜欢文章记得