蚂蚁集团 3.25 Java 一面(电话面)
面试官人挺好,我被吊着拷打(如下图)
1.没有自我介绍
2.实习项目各种问题(问麻了,反正就是除了我做的我写的以外,他延伸发散的各种问题我都不会、不知道,包括不限于此项目能支持多少用户、QPS、我给你一个具体场景你来计算支持多少用户(我不会算..............))
3.线程池了解吗,线程池参数,使用流程,有哪些注意事项
4.线程池参数值的设置如何考虑?(我说了核心线程数怎么设置:I/O密集->2N,CPU密集->N+1(N核),所有线程数是兜底的,不知道怎么搞,等待队列注意设置有界避免OOM)
5.I/O密集->2N,CPU密集->N+1 的原因是什么?我不这么设计如何(CPU->2N)?
(CPU密集->2N我说会导致空闲的太多,造成资源浪费,好像错了,面试官很不感冒)
6.给你一个8核的服务器,线程池8个核心线程数,20个总线程数,QPS为20,每个线程执行1s,执行流程是什么?
(不知道 多少核服务器和线程池的关系是什么
我说8个线程直接来服务,剩下12个进阻塞队列(好像错麻了))
(复盘想了想这个问题,感觉面试官想问的是如果8核CPU设置20个核心线程的执行流程,上下文切换那种?)
7.黑马点评 求用户共同关注对象,为什么用Redis做(我只是单体项目作秀😭)
8.Redis内存淘汰机制是什么?
9.你的共同关注用Redis存,用户量突增,内存超限怎么办?
(我说单体项目用户少,没这么情况,如果发生了,会走Redis内存超限报错,到时候我会人工解决,然后重新设定方案)
10.这里好像又问了一个Redis的关于计算QPS的?(不会,我直接说人脑子已经晕了(暗示别问我这种问题了)😭)
11.你的共同关注用Redis存,用户量突增,内存超限了,给出你的 A.应急解决方法、B.中期、C.后期方法
我说,
(中间好像说了某种很次的内存淘汰方案,但是听他意思是这里不能用内存淘汰)
A:这块功能直接撤掉Redis,全部走MySQL
B:考虑优化Redis存储方案,是否set存的东西有缺陷?能否改进?Redis位图那种结构可能有效?(反正核心思路是优化数据结构)
C:在B之上,搭建Redis集群(叠Redis),高可用,以及为了维护双写一致性,只保证最终一致性。(因为这种情况下,我不管实时了,最终一致就行)
说完面试官想了4-10s吧,没有感情的哦了
12.问了我科研论文的东西(可能想知道我写的论文是不是自己是核心苦逼仔?)
13.又问实习项目,又是什么流量(几千万,服务器配置,线程池等,让你计算)的东西(我听到流量QPS就喊不会了😭)
反问:
1.我答的比较差,有没有什么建议(对任何技术点,你要从开始到结束明白整个流程,你要明白它们运行的底层机制,你不够深(是我太浅了还是你太深了😭))
2.为什么没八股?(不要八股选手,看思路,各种场景应对方案)
3.为什么没手撕?(已经笔试了,知道成绩了)
4.流程是什么?(如果G就结束,如果过了电话通知还有二面,成绩是跟其他人横向对比的)
--------------------------------------------------------
已挂
#蚂蚁集团暑期实习##软件开发2024笔面经#