网易面经(一面+二面)

笔试

4道阴间题目AK

介绍

  • 部门:网易严选

  • 职位:Java开发

  • 整体场次:一轮笔试+两轮业务+一轮HR

  • base:杭州

    面试

  • 自我介绍

  • 代码题目:既然你笔试AK了,那我们就来一道比较难的吧(最后没写完简单说了一下思路就过了,面试官超级nice),题目大意是,补充回文字符串,比如 noon ---> noon因为noon已经是回文了,比如hell--->helleh,因为再末尾追加eh,可以构造长度最小的回文。

  • 操作系统

    1、不同的进程是否能同时使用同一个端口(答,不可能的,但是可以同时绑定和监听,为什么不行,答:我电脑上有个1080启动的小飞机,只要有其他的应用程序占用,我必须得把那个应用程序干掉,才能继续使用我原来的应用。
    2、如果我想让两个进程绑定同一个端口的话怎么做(我直接说不知道,然后问了一下是不是类似反向代理那种,面试官说不是,然后给我引导了一下,让我解释了一下fork,我从Redis持久化rdb上解释了一下,父子进程拷贝过程,看来应该是使用类似于共享空间,后面给我解释了一下可以同共享文件的方式来解决,进程先listen,然后fork 多个子进程,每个子进程再accept 就会出现这种状况。connect的连接具体被哪个子进程accept返回是由内核分发。unp,apue 上都有讲。解释

  • 你能不能详细给我说一下数据库的索引,我从B树和B+树的区别,同时对比了操作系统的结构给面试官说了一下,这里面试官直呼内行。

  • 大文件问题:在操作系统中进行查询,那种查询方式比较快,是顺序查询还是随机查询,顺序查询减少了寻道次数,所以顺序查询比较快

  • 主键索引和非主键索引的区别(查找方式不同)

  • SSD呢

  • 分布式事务如何解决2pc,3pc,TCC

  • 对前沿技术有什么了解吗,ZGC,Istio,Java14,TomCat10,容器云(k8s+docker+Istio)

  • 反问:

    • 面试官你觉得我怎么样:内行,因为你笔试AK了,技术也还可以
    • 问了两个技术相关的问题,一个是直播延时,一个是数据库设计的问题
    • RPC和HTTP那个用的更多,RPC,如果你有兴趣,最后来我们这到时候我们可以推荐你去参与这块的相应研发

不吝啬了好吧....这么多人问...

  • 为什么索引要使用B+树

    • 一般来说,索引本身也很大,不可能全部存储在内存中,因此索引往往以索引文件的形式存储的磁盘上。这样的话,索引查找过程中就要产生磁盘I/O消耗,相对于内存存取,I/O存取的消耗要高几个数量级,所以评价一个数据结构作为索引的优劣最重要的指标就是在查找过程中磁盘I/O操作次数的渐进复杂度。换句话说,索引的结构组织要尽量减少查找过程中磁盘I/O的存取次数。而B-/+/*Tree,经过改进可以有效的利用系统对磁盘的块读取特性,在读取相同磁盘块的同时,尽可能多的加载索引数据,来提高索引命中效率,从而达到减少磁盘IO的读取次数。
    • 1、 B+树的磁盘读写代价更低:B+树的内部节点并没有指向关键字具体信息的指针,因此其内部节点相对B树更小,如果把所有同一内部节点的关键字存放在同一盘块中,那么盘块所能容纳的关键字数量也越多,一次性读入内存的需要查找的关键字也就越多,相对IO读写次数就降低了。
    • B+树的查询效率更加稳定:由于非终结点并不是最终指向文件内容的结点,而只是叶子结点中关键字的索引。
    • 。所以任何关键字的查找必须走一条从根结点到叶子结点的路。所有关键字查询的路径长度相同,导致每一个数据的查询效率相当。
    • B树在提高了IO性能的同时并没有解决元素遍历的我效率低下的问题,正是为了解决这个问题,B+树应用而生。B+树只需要去遍历叶子节点就可以实现整棵树的遍历。而且在数据库中基于范围的查询是非常频繁的,而B树不支持这样的操作或者说效率太低。
    • B+树的特点,只有叶子节点存储数据

0815
说实话,这面挺有意思的,首先是面试官迟到了20分钟,我以为我被放弃了55555,虽然没有没答上来的题目,但是觉得自己有力没有使上。一点分布式都没问....

  • 自我介绍
  • 介绍一下你的实习项目
    • 解释了一下JPA和Mybatis的区别
    • 如何进行重构
  • 介绍一下你的两个开源项目的难点
  • 解释一下死锁
  • 死锁的原理和机制,Linux检测死锁的命令
  • 一个死锁的场景题,一开始答错了,后来提示了一下就想起来了,往CAS上考虑了,想偏了
  • 看你算法挺好的是吧,然后写了一个银行家算法,链表是否有环(直接答出正确答案,老哥说再换一个,就给了一个普通做法....)
  • 用栈实现一个队列,有点忘了,一开始想用一个做来着,结果不行,555最后虽然还是答上来了,但还是觉得好尴尬啊,脑子断片了。
    结束,没有反问。
    总体这.....完全体现不了我的功力啊
    HR消息:今晚严选部门应该能发完所有的通知

虽然死的很不明白....但是还是继续奔赴下一场了
最后一更:止于二面,继续准备了各位

#面经##网易#
全部评论
大佬!!!
1 回复 分享
发布于 2020-08-14 11:35
太强了😖😖😖
点赞 回复 分享
发布于 2020-08-14 11:36
楼主你好,请问你是实习、校招还是社招?岗位是什么?开发的话,是Java方向还是C++方向?或者其他语言方向~
点赞 回复 分享
发布于 2020-08-14 11:38
太强了。
点赞 回复 分享
发布于 2020-08-14 11:40
tql
点赞 回复 分享
发布于 2020-08-14 11:46
面完就约二面了吗?
点赞 回复 分享
发布于 2020-08-14 12:15
tql
点赞 回复 分享
发布于 2020-08-14 12:19
tql
点赞 回复 分享
发布于 2020-08-14 12:26
大佬是本科生吗? 😫
点赞 回复 分享
发布于 2020-08-14 12:37
tql
点赞 回复 分享
发布于 2020-08-14 13:04
tql
点赞 回复 分享
发布于 2020-08-14 13:40
tql
点赞 回复 分享
发布于 2020-08-14 14:55
果然提前批不一样
点赞 回复 分享
发布于 2020-08-14 15:07
tql
点赞 回复 分享
发布于 2020-08-14 17:41
”我从B树和B+树的区别,同时对比了操作系统的结构“ 想学习下,请问楼主这里具体怎么描述的?谢谢楼主。
点赞 回复 分享
发布于 2020-08-14 17:44
楼主平时是怎么学习的,看哪些资料
点赞 回复 分享
发布于 2020-08-14 17:52
同想学习一下“从B树和B+树的区别,同时对比了操作系统的结构“大佬是怎么描述的,谢谢
点赞 回复 分享
发布于 2020-08-14 21:17
内行
点赞 回复 分享
发布于 2020-08-15 08:27
我也想学习索引那个,求私发😂
点赞 回复 分享
发布于 2020-08-15 08:28
tql大佬
点赞 回复 分享
发布于 2020-08-15 09:47

相关推荐

点赞 评论 收藏
分享
8 60 评论
分享
牛客网
牛客企业服务