面经集合|2023暑期实习求职日记
匿名用户
4293
2022.03.28
2024.09.01
发布于 山东
  1. 情况简介
  2. 2.23 某团实习 网申
  3. 2.23 并夕夕实习 网申
  4. 2.23 某节实习 内推
  5. 3.2 福报厂实习 网申
  6. 3.5 福报厂笔试 ac、0.3、0 大题20分+选择题预计25-35分 == 45-55分
  7. 3.6 某团笔试 ac、0.09、0.45、0.27、0.36
  8. 3.7 并夕夕笔试 ac、ac、0.25、ac
  9. 3.10 某团一面 60分钟 过
  10. 3.11 某节一面 65分钟 过
  11. 3.11 福报厂一面 不到50分钟
  12. 3.12 并夕夕一面 不到40分钟 过
  13. 3.16 某节二面 不到70分钟 过
  14. 3.16 某节HR面 期待offer
  15. 3.17 某团二面 大概30分钟 (劝退面)
  16. 3.18 并夕夕二面 55分钟
  17. 3.18 某节offer,已确认
  18. 3.21 福报厂二面 不想面了就拒了,但是面试官居然是工大校友,感觉血亏

情况简介

c9,经管学院-信管专业

一个国三奖,一个社团经历

springcloud商城项目 + rpc项目(后来才发现烂大街了已经)

java套餐 + 一点点微服务、分布式解决方案(只要你答题带着自己的理解,那就不是八股文狗头)

(面完美团回头来看,自己和背八股文也没什么区别吧,行百里者半九十)

算法题稀烂,大概周赛过两题,第三四题只会暴力从没ac的水平

2.23 某团实习 网申

2.23 并夕夕实习 网申

2.23 某节实习 内推

3.2 福报厂实习 网申

3.5 福报厂笔试 ac、0.3、0 大题20分+选择题预计25-35分 == 45-55分

3.6 某团笔试 ac、0.09、0.45、0.27、0.36

3.7 并夕夕笔试 ac、ac、0.25、ac

3.10 某团一面 60分钟 过

b + 树没答好

get post区别只答了两点

hashmap为什么不安全没答好

rocketMQ分布式事务没答好

自我介绍,项目,兴趣之类,如何学习,看什么书

商城项目负责什么?我:巴拉巴拉,面试官:哦,一个大的demo

简单八股文 三次握手,七层网络,aop,线程池,volatile,cas

如果用了2核心,4最大,无限队列,添加10个任务,线程池会怎么样?

cas操作只答了原子性,后面追问如果比较不成功呢?自旋,自旋失败呢?

一个场景题(自己挖的坑,没答好)

rocketMQ都做了什么?解耦,下游添加服务的话很方便,比如解析日志,做一些分析什么的。再有就是实现(最终一致性)分布式事务

事务能具体点吗(这里要求的是用MQ实现强一致性)?这个真不知道,推了半天,(强一致的话)应该在消费成功或者失败返回一个什么标志的吧?

面试官让用伪代码口述,说了半天没说好。模模糊糊也过了。面试官说大家可能解决方案不一样,让我再看看。

可能当时我紧张,没说明白强弱一致性,说明白可能就不用遭这一劫了。

代码题:多线程下流程控制,写了10多分钟吧

给了一个好长的模板,让我往函数里填代码,第一个空,处理之后一个排序就好了

第二个空,用while(flag){},面试官说这样cpu空转,能不能优化?

又说了wait,notify,面试官让我优雅一点,当时脑子一片空白,紧张的想不起来。

太紧张了,其实就是轮询和事件,我写了轮询,当时说到cpu的时候就该想到select和epoll

3.11 某节一面 65分钟 过

tcp拥塞控制没答好

索引失效只说了两点

也问了b+树,这次说到关键点上了。。。

吸取了上次的教训,面试官:熟悉吗?了解吗?我:可能吧,简单说说,巴拉巴拉,哪里要详细说吗?

自我介绍

问项目(demo)亮点:学到很多比如配置中心动态修改配置,

关于学习的什么的一个问题记不清了,答:前后知识点关联比如:零拷贝 rocketMQ应用-netty实现-linux底层,

说说零拷贝?(再挖坑,3个串着说了说,有点模糊但是整体说下来了)

前面都是开放式,让你自己说哪里熟悉哪里不擅长,(赶紧说学院没开过操作系统。。)

常规八股几道,https,time_wait也问到了, 垃圾收集算法,分代,年龄15岁到老年代,能调吗,大对象怎么样

hashmap不能排序,怎么办?用Linked那个map不对,那个插入有序,是要排序,用treemap,(还可以用跳跃表实现的那个map)

如果线上#¥@%&*@#,是cpu先满还是@#¥@#@¥? 当时脑子闪过的是io密集和cpu密集之类的概念

但是还是说了不会。 面试官说没事,一般社招才问

redis几个常见的题,为什么要缓存?数据库必须要查磁盘吗(有一层缓存层)?击穿,雪崩,穿透怎么回事?

redis场景题,很多很多流量进来查同一个key,缓存没有,怎么设计?限流 + 锁,只有前面的一点流量进数据库,后面的会走缓存。

限流算法?窗口,令牌桶,漏斗,

让你简单实现有什么想法? redis的list,几个线程往里放令牌,拿到令牌才能访问。

不占内存吗?比如一个月3亿流量? 我:可以每次放的时候看下list大小,,,确实,还不如直接计数。。。

算法题,按照数组中元素出现次数排序并输出(用treemap更好,但是我不会api,怕出错,用了自己熟练的,面试官也没说什么)。

3.11 福报厂一面 不到50分钟

(主要写了印象深的,有点难度的,感觉总体比较简单,照着简历问的)

为什么选菜鸟?。。。因为我菜(其他热的部门不敢投,菜鸟宣传少,可能竞争少一点)

volatile?(这里我还说了说操作频繁才会有问题,一次两次操作好像没问题,自己测试过,感觉明显要好很多)

10个线程,如何知道所有线程都运行完了?countdownlatch

aop怎么回事?可重入锁怎么实现?sync怎么实现(jvm实现,说了monitorenter和exit,再往下不会了)?

servlet安全吗?没想起来说了安全,能不能稍微提醒一下?

servlet是单例吗?servlet单例

如何实现统计用户访问次数?get方法里加一,需要数据库或者静态变量这样的。恍然大悟:线程不安全

就用静态变量如何线程安全?加锁,或者AtomicInteger

hashmap 负载因子大了、小了会怎么样?(小了频繁扩容,大了堆在一起)

没有cookies如何再次自动登录?(蒙,因为不知道有别的缓存什么的,唯一信息丢失了怎么证明我是我?后来百度一下应该就是有缓存之类的吧)。

你的rpc框架(自己的项目),如何知道这个服务要去那台机器上找?注册中心动态推送,自己也可以手动配置找到对应的几个。负载均衡,机器坏了换一个,都坏了报错,异常等等。

学中间件、框架是为了使用还是深入呢?

经管学院的,为什么选了信管?

3.12 并夕夕一面 不到40分钟 过

第四次自我介绍,相当熟练

面试官照着简历问,很轻松

先问了有没有开基础课,开了计网和数据结构,自己看了操作系统

先问了点基础,tcp,索引失效,redis数据结构等

tcp头部都有那些?直接说没留意过

cpu内存不断增长怎么排查?top指令 + 工具(可能有自研的) + 日志

问项目怎么部署的,虚拟机+云服务器+docker,没有完全实现(大demo)

看过dubbo?说说你怎么做负载均衡?dubbo的loadbalance接口下的几个实现类我都看过,但是我的实现比较简单,轮询

面试官:如果那一台机器挂了呢?我:巴拉巴拉。 面试官思考一下:一般实际不这样做吧 。我:我图省事。。

一致性哈希了解吗?简单说说?做什么的? 负载均衡,分库分表时扩展性强,拿redis做了举例,面试官:redis集群不是用的这个吧?我:确实不是这个,我就举个例子。

看简历上写的都是自学的?怎么学习?要学一个知识点的话如何深入学习? 图书馆资源丰富,博客,文档,源码

其他兴趣爱好?

算法题: n个大小不同的盘子竖着叠在桌上,每次只能从上面反转,经过多次反转后按大小排列,输出每次怎么翻转的。

(题就是这样的,刚看到我也懵)

找到最大的那个的数组下标a,反转到最上面(输出a),在整个反转(输出n),让最大的到最下面(如果本来就在最下面就不反转了)。剩下的未排序的重复。

3.16 某节二面 不到70分钟 过

自我介绍

两道算法题 做了40min

很久之前做的,那时候比较菜都是看的题解根本没学会,面试现场重新做(自信即巅峰)

1.分割等和子集,只说了暴力dfs,又说set优化,剪枝,知道该动态规划,规划不起来啊

2.数组连续子数组乘积最大值,这个很快有了思路。

​ 写完一看哦吼输出0,面试官提醒有一行代码写错了,找到改了。

​ 第一次案例过了,面试官让改两个数,结果没过。。。一看已经两点四十了,手抖的不行

​ 又改了两三分钟,告诉面试官是哪里错了,输出正确。(惊险刺激)

timewait和closewait?

输入浏览器一个地址发生什么?

tcp下一层干嘛得?

linux如何看cpu,进程,端口?

进程和线程区别?没说全

浏览器开多个端口,多线程好还是多进程好?性能方面说了说

比如开了很多页面,一个页面崩了?想了半天说不出来。突然灵机一动,转换成一个java应用,如果关键线程出问题比如io多路复用那个单线程,全局都出问题。如果是后面线程出问题,是不是不受影响啊?多个java应用自然都隔离的很好。面试官表示肯定。

智力题,两个人轮流抛硬币,谁先正面谁赢。第一个人赢得概率?

(递归思想 0.5 + 0.5(0.5 * x)= x)

怎么看待转语言的?

面完问hr,说给过了,一个小时后约了当天六点hr面

3.16 某节HR面 期待offer

3.17 某团二面 大概30分钟 (劝退面)

先问项目细节

redis和数据库一致性?讲了延迟双删

追问:第一次删除有意义吗? 答:可能看场景怎么怎么样

追问:redis的删除放在事务里还是外面?感觉没什么影响,毕竟只是缓存,删错了也没问题

解答:如果直接删了,不妥善处理,可能一下db直接没了,缓存是很严肃的事情

击穿和穿透?如何解决?答得比较模糊

runnable和thread区别?编码上有区别,thread可以封装的复杂一点,runnable,,,往那个方向答我都不知道。

线程池参数?

追问:核心线程数怎么设置?答了io密集和cpu密集,答了netty默认2倍

解答:这只是辅助参考,实际看接口,@#@¥@¥记不清了

直接把new的对象时放入老年代?不知道(知道大对象会直接进,可能就是问这个,哭死)

数据库怎么看走不走索引?explain

追问:那key_len字段什么意思?X__X

慢查询:索引问题,limit导致很慢吧。。。

spring ioc?简单说了说

xml一个name和注解一个name一样了,启动会报错吗?不知道。

解答: 用的是map,会覆盖

3.18 并夕夕二面 55分钟

先问了意向城市,工作选择,投了哪些等等,答:叫的上名字都一线二线都投了

表明了如果拿到不加班的优先选择不加班的。。。讨论人生,讨论加班文化

问如果有offer怎么选

常规八股文出了几个,估计答出来个8成吧,

问了mvcc

java异常体系

然后这个面试官很有特点,总是希望让我简单说,不想听我长篇大论水时间(@_@)

一句话概括?两句话总结?

。。。仿佛回到高中做语文,很难受,直接表明自己不会总结不知道

除此之外还问了redis实现分布式锁

1.简单实现

2.可用性?集群,过半加锁成功。

3.出现什么问题?为什么出现?(临场想到一个)集群响应慢,导致第三台成功时,第一二键已经过期了。

4.怎么解决?不断更新过期时间,直到过半成功。

5.设计分布式锁都要考虑哪些?

第五点真答不上来,这很复杂,可能随口说了一两点,

面试很难集中注意力深入思考。(单核无疑了,要么说话,要么思考,一到面试就不会思考了)

算法题给一个数n, 生成有效括号,

写完面试官让我补全注释,改变量名

就用了resultList、solution、index等,generate我到是会拼,但是括号的英文怎写啊我

dfs函数命名成啥我也不会。。。

3.18 某节offer,已确认

后面不再面试了,学校还有四门核心课程,再学一学go语言,完善下java项目。

没有烦恼的周末。

3.21 福报厂二面 不想面了就拒了,但是面试官居然是工大校友,感觉血亏

评论 (5)