被很多人蹲的网易互娱二面面经

2025-05-03 19:08:42

被很多人蹲的网易互娱二面面经 首先,我有一些话必须要说在前面。我是一条鱼,只有7秒的记忆,谢谢。 一面时间:4月17日,耗时1小时27分钟,二面时间:4月23日,耗时1小时10分钟,三面时间:如果有的话再来补充😂 一上来老规矩自我介绍,之后就问了我对于换语言怎么看,我当然是坐着看啊,不不不,当然是没问题啊,只要网易要我别说换语言了,换啥都行,之后就是一些问题,干货如下: 1.项目中最有成就感或者最有技术的一个,详细的说一下(涉及到项目就不能说太多了) 2.针对项目中mysql表数据量过大时查询为什么会变慢(数据量过大进行全表扫描的时候时间复杂度自然就高了,估计是没回答到面试官心中的点,然后引导到了文件上) 3.由上一个问题引导到数据库数据保存在本地的存储结构是什么样的,从这个角度谈谈为什么查询会慢(Innodb存储引擎下,表的存储文件分为两个,一个是存表的结构,一个是存表中的数据,至于为什么会变慢回答的还是文件量过大,查询自然就慢了) 4.之后又引导到磁盘上,从这个角度谈谈查询慢的原因(谈到了磁盘预读和磁盘读取时产生的时间,具体的回答的也不是很好) 5.之后引导到索引上,说一说索引为什么能快速定位到我们想要查询的数据(刚开始不知道,之后引导到了b+树上,就是利用节点上存储的索引范围去快速的查询) 6.Redis内存淘汰策略是怎么实现的(不会,本以为问的是有哪些,结果问我怎么实现的,当场懵了,之后我说到了LRU上) 7.如果让你去实现一个淘汰策略,你会使用什么数据结构(答了LinkedHashMap,但是好像不太对) 8.手写LRU算法(因为之前说了LRU算法,就让我手写了一个🤣,写的时候面试官一直催我,然后就没写完,就写了get和put方法) public class MyLRU {

private final int MAX_CACHE_SIZE;

private final float DEFAULT_LOAD_FACTOR = 0.75f;

LinkedHashMap map;

public MyLRU(int cacheSize) {

MAX_CACHE_SIZE = cacheSize;

int capacity = (int) Math.ceil(MAX_CACHE_SIZE / DEFAULT_LOAD_FACTOR) + 1;

map = new LinkedHashMap(capacity, DEFAULT_LOAD_FACTOR, true) {

@Override

protected boolean removeEldestEntry(Map.Entry eldest) {

return size() > MAX_CACHE_SIZE;

}

};

}

public synchronized void put(K key, V value) {

map.put(key, value);

}

public synchronized V get(K key) {

return map.get(key);

}

@Override

public String toString() {

StringBuilder sb = new StringBuilder();

for (Map.Entry entry : map.entrySet()) {

sb.append(String.format("%s:%s ", entry.getKey(), entry.getValue()));

}

return sb.toString();

}

} 9.LRU算法中出现的LinkedHashMap实例在创建时,jvm进行了怎么样的操作(并不是很懂这么问题的点在哪里,但是面试官提到了类加载,就回答了加载的过程,然后引导到了jvm运行时数据区,最后说了对象的创建是存在堆上) 10.讲一下LinkedHashMap中put操作将key和value存到内存哪里(也不是很明白这个点,之后被引导到了HashMap put操作的过程上) 11.由于项目都是和运维相关的,问我怎么看待运维工作的(回答了运维工作就是要发现系统的问题,并且具备定位问题的能力,之后交给相应负责人去解决问题) 12.假设运维同事和你说系统无法访问了,你会怎么做(首先和同事沟通确定无法访问到底指的是什么,a.如果是项目网页打不开,先去ping一下服务器看看能否ping通,如果ping不同,那么就去服务器上看一下进程是否挂了,如果没挂那就进到tomcat里面去看日志定位具体错误位置;b.如果是系统中某一个页面无法访问,那就进入到相应页面通过F12查看信息,之后进入到代码中去确定是前端代码问题还是后端代码问题) 13.考察设计的能力,请设计一个方案,能够满足一次性,高效的将游戏的服务端发布到1000台手机上(直接懵住,以为是考察高并发知识,结果面试官说不是,就是纯设计题,然后没回答上来) 14.高并发的情况下,项目应该考虑哪些点(在上一题的基础上改成了高并发问题,回答了将服务器做成集群,并通过负载均衡的方式,将请求路由到不同服务器去处理,之后还回答了利用消息队列将多个请求缓存起来,让服务器一个一个消费) 15.技术知识都是怎么获得的(回答了买书,然后问了最近看的一本书) 最后的时候问了一下手上有没有别的offer,以及实习的起止时间等等,之后就进入到反问环节,暂时就记得这么多了。总的来说,网易面试给我的感觉就是不会去问一些很常见或者很书面的问题,都是一些很隐晦的问题,让你自己去挖掘藏在问题中的技术点,希望有三面吧,加油! ------------------------------加更,4月24日,已拿网易offer,感谢网易,感谢牛客#网易互娱##实习##Java# 提示 订阅专刊 全部评论 推荐最新楼层 greyby 快手_客户端工程师 &lz二面后有消息了吗?网易互娱是不是2轮技术+hr面 点赞 回复 分享 发布于 2020-04-24 15:25 走好|每一步 字节跳动_后端开发工程师 顶帖,谢谢面经哈哈哈 点赞 回复 分享 发布于 2020-04-23 21:53 春招加油2020变富婆 门头沟学院 项目经理 哈哈哈为鱼点赞👍 点赞 回复 分享 发布于 2020-04-23 21:45 暂无评论,快来抢首评~