我这半年到底干了啥(附多家详细面经)

Posted SunAlwaysOnline

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我这半年到底干了啥(附多家详细面经)相关的知识,希望对你有一定的参考价值。

有现实中的小伙伴问我,我这半年到底干了啥。怎么博客突然不更新了?

最近的一次更新还是在去年12月

其实这半年嘛,一直在为面试做准备。算法一直是我的弱项,于是突击了力扣。

开了会员,刷了将近700道,有的高频题目都刷了第二遍。 我将每次的刷题记录同步到了github中,有需要的可以移步SunAlwaysOnline

下面是我的提交记录

还是那句话,如果你想进大厂,算法是必须要过关的。


面试前,我也整理了高频的知(ba)识(gu)点(wen),将会陆续发出来,小伙伴们不要着急哈。

从3月份开始,每天大概会花2-4个小时复习这些知识点。


6月下旬~7月下旬,我开始了简历投递及面试阶段,下面是面试的具体时间表(我简直是时间管理大师)

 绿色的代表过了,红色的代表挂了。


有些单纯问项目的面经,就不发出来了。

网易一面

1、自我介绍

2、对docker与k8s的理解

        说了一些k8s内的组件,api-server、scheduler、kubelet、etcd的作用与发pod的流程

3、对etcd的理解,etcd怎么实现强一致性

        raft协议,另外说了可以做分布式锁,利用informer机制接收pod信息

4、https与http的区别,https的流程

        证书验证->公钥加密随机数->私钥解密->对称加密传输

5、服务之间的认证

        说了拦截器实现、jwt

6、对双亲委派的理解,场景

        说了loadClass方法,jdbc、tomcat、java9模块化对双亲委派的破坏

        场景:力扣提交代码重写findClass方法,将字节流转换为Class对象

7、SpringBoot与Spring的区别,怎么实现自动装配的

        说了SpringBootApplication->SpringBootConfiguration->EnableAutoConfigration->import AutoConfigurationImportSelector->getCandiaties->Spring.factories->OnConditionalClass

8、问题排查思路

        多线程优化获取harbor内镜像扫描信息

        慢查询:explain,加索引

        Cpu使用率高->top->top --pH pid->转16进制->jstack pid|grep ->gc线程活跃->jstat -gcutil观察FGC频繁->jmap -dump->mat分析->大量对象

9、对云原生的看法

        说了微服务+docker+k8s+devops

10、写博客的动力与计划

        3w粉丝给我的,明年打算写公众号,深入中间件源码


赞同科技一面

1、自我介绍

2、Java有哪些类加载器,怎么自定义类加载器

3、类加载的流程

4、实现线程有哪几种方式

5、Callable与Runnable的区别

6、Future.get()阻塞原理,多个线程同时调用get会发生什么,怎么实现唤醒的

7、怎么实现3个线程顺序执行

8、CompleteFuture实现顺序执行的原理

9、数据库隔离级别,每种级别存在什么问题

10、Spring事务传播方式哪些,事务失效的场景,怎么解决

11、有哪些分布式id框架,雪花算法的缺点,怎么解决时间回拨

12、怎么随机打乱一副扑克牌

13、项目难点

14、反问


BOSS直聘一面

1、自我介绍

2、说说协程

3、线程与进程的区别

4、多进程编程相比于多线程编程的优势

5、数据库索引为什么使用B+树,和其他数据结构的区别

6、有看过mysql、redis与rabbitmq的源码吗

7、time_wait是哪个阶段、过多会造成什么情况,用什么命令排查、怎么优化

8、close_wait是哪个阶段,为什么要有这个状态

9、为什么要等待2MSL

10、一台服务器最多支持多少个tcp连接,怎么计算

11、linux的socket函数返回什么对象

12、docker能够隔离什么,对什么资源隔离性最差

13、k8s是怎么调度pod的

14、kube-scheduler是怎么实现高可用的

15、api-server怎么保证高可用,我说引入keepalived+haproxy

16、手撕算法,合并k个有序数组

17、一边写算法,一边问优先队列底层是什么,怎么构建的

18、反问


BOSS直聘二面

1、cicd结合k8s组件,说一下其中了解到的最大链路

2、说一下k8s的infomer机制

3、Fabric8保持的连接是长连接吗

4、发布的pod,平台支持哪些参数

5、怎么使用无锁算法实现线程安全或同步

6、class文件格式,加载class文件的过程,怎么进行字节码增强

7、9匹马,3个赛道,选前三快,最少次数是多少

8、跳跃游戏-怎么判断能否跳过去,最少次数是多少

9、有在看其他的机会吗


滴滴一面

1、怼项目

2、Service原理

3、为什么出现红黑树这种数据结构

4、AtomicInteger原理、cas是线程安全的吗

5、对镜像层的修改是怎么处理的

6、select、poll、epoll原理,poll怎么打破1024的限制

7、请求头里keep-alived的好处,和http2.0多路复用的区别

8、CephFS与CephRbd的区别

9、HashMap扩容的过程,1.7与1.8的区别

10、volatile的作用

11、MESI缓存一致性协议了解吗,哪4个状态

12、缓存击穿与穿透的区别,怎么避免穿透

13、LinkedHashMap底层数据结构,怎么实现顺序性的,怎么实现LRU

14、微服务的发现是怎么做的(用的第一题的Service...)

15、会go吗?会python吗?会node.js吗?

16、namespace与cgroup原理

17、说一下rootfs


顺网科技一面

1、怼项目

2、容器的四种网络模式

3、K8s网络模型calico的理解

4、Headless类型的Service的使用场景

5、Object类有哪些方法

6、hashcode用于什么场景

7、wait方法的理解

8、设计一个阻塞队列,说代码,为什么要有while

9、线上所有接口访问变慢,怎么排查,说命令,FGC频繁怎么办

10、time_wait与close_wait所处在哪个阶段

11、http有哪些header

12、自定义starter怎么做,说说spi机制

13、SpringBoot有哪些自己的注解

14、Spring事务默认传播方式,怎么判断当前方法存在事务

15、Jdbc的流程,Class.forName与.class的区别,怎么破坏双亲委派的

16、Mysql的默认隔离级别,oracle呢,oracle有哪些隔离级别

17、可重复读怎么在当前读与快照读的情况下解决幻读的

18、redis有哪些高可用方式,哨兵的三个作用

19、平时是怎么学习的

20、反问:公司做哪些业务


顺网科技二面

1、怎么了解到的岗位

2、校园作品,怎么进行需求调研的

3、并发与并行的区别

4、如何实现线程同步与通信

5、设计模式用过哪些,在哪里使用的

6、对依赖注入的看法,容器顶层接口有哪些

7、Jvm看过那些书,看了几遍

8、对分布式的理解,分布式ID、分布式事务与分布式锁

9、缓存不一致怎么解决,说两种方式

10、项目的意义与挑战在哪里

11、对k8s存储的了解

12、说3个同事的优缺点

13、平时怎么学习的

14、花时间最久的算法

15、最近在看哪些书

16、反问:你觉得我的优缺点有哪些


涂鸦智能一面

1、Redis分布式锁

2、SpringBoot自动装配原理

3、怎么设计读写锁

4、怎么优化慢sql

5、联合索引和单个索引,谁更快

6、netty零拷贝

7、设计模式用过哪些

8、状态模式与策略模式的区别

9、怎么写出健壮的代码


除了这些八股文,还有重要的一点是,一定要整理好自己的项目。

八股文只适用于一面二面,真正决定你是否能够获得offer的是三面和四面(如果有)。

三面四面的面试官,一般是组长或者大leader,他们将会一直抠项目。

以上是关于我这半年到底干了啥(附多家详细面经)的主要内容,如果未能解决你的问题,请参考以下文章

一篇面经(BAT面试)(转)

Android面经分享:面试多家大厂被拒,原因竟是这个!(最终收获小公司Offer)

01网络面经:你每天都用的HTTP协议,到底是什么鬼?

01网络面经:你每天都用的HTTP协议,到底是什么鬼?

python的import到底干了啥

软件测试多家公司面经合集分享,这次秋招不用再担心面试难的问题了