万丈高楼平地起,大二小伙不甘平凡成功拿到网易offer上岸,总结一下面经吧

147 篇文章 0 订阅
140 篇文章 0 订阅

前言

楼主今年大二,本科双非,之前有过竞赛经验,首次参加校招,一共参加了网易和百度,滴滴,最后选择了去网易实习!

网易面试(2020-11-18)

一面

Redis五种数据结构底层与C对比

SpringMVC流程,相同url会出现什么问题

会报异常,registerHandlerMethod方法上注解说明url名称相同时会抛出异常

如何保证缓存一致性

先删除缓存,再修改数据库。如果数据库修改失败了,那么数据库中是旧数据,缓存中是空的,那么数据不会不一致。因为读的时候缓存没有,则读数据库中旧数据,然后更新到缓存中。

可以先把“修改DB”的操作放到一个JVM队列,后面读请求过来之后,“更新缓存”的操作也放进同一个JVM队列,每个队列,对于一个作业线程,按照队列的顺序,依次执行相关操作,这样就可以保证“更新缓存”一定是在DB修改之后,以保证数据一致性

BeanFactory和FactoryBean

happen-before规则

一个线程解锁前对共享变量的写对解锁后其他线程加锁的读可见

线程对volatile变量的写,对其他线程的读可见

线程启动前的写对启动后的读可见

线程结束前对变量的写,对其它线程得知它结束后的读可见(比如其它线程调用 t1.isAlive() 或 t1.join()等待

它结束)

tcp拥塞控制

https 对称加密与非对称加密,如何防止第三方攻击

Redis RDB持节化,10GB文件如何处理

微服务理解,服务出故障如何解决

SeiverizableId

这个序列化ID起着关键的作用,它决定着是否能够成功反序列化!简单来说,java的序列化机制是通过在运行时判断类的serialVersionUID来验证版本一致性的。在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地实体类中的serialVersionUID进行比较,如果相同则认为是一致的,便可以进行反序列化,否则就会报序列化版本不一致的异常。

voliatle 可见性原理(lock前缀),有序性原理(4个内存屏障区别)

aop原理(chlib,jdk)动态代理和静态代理区别

判断回文链表 时间+空间+优化

HashMap原理(7和8)为啥大于8用红黑树,小于8链表

MySQL的InnoDB和MyISAM区别

索引数据结构为啥不用B树

啥时候建索引,索引如何优化(慢日志,explain字段解释)

最左前缀法则

重做日志,回滚日志

事务,隔离级别,MVCC,乐观锁,悲观锁实现,间隙锁

项目

滴滴面试(2020-12-31)

一面

Java基本数据类型

HashMap1.7/1.8

jvm内存模型

双亲委派机制

类加载机制

volatile/CAS原理

AQS机制

多线程工作原理/7大参数/4大拒绝策略

堆分代/GC算法/逃逸分析/GCROOT

对象分配步骤,TLAB

CMS原理 优缺点

MySQL Innodb和MySiam存储引擎区别

MVCC机制

事务4属性/隔离级别

undo/redo

乐观锁实现

Redis String/Hash 数据结构

List/set/arrayList/LinkedList/底层数据结构,优缺点

场景题:连续内存空间 有数组下标,如何定位内存空间

写SQL

算法:反转字符串

问实习时长,多久能来。

二面

因为实习时长原因已拒,面经就暂时没写

百度面试(2021-4.12-4-19)

一面

HTTP报文基本组成,基于无状态引处cookie和session区别,用户禁用cookie怎么办(答得token)

TCP三握四挥,三握原因,与UDP原因,TCP可靠性原因(握手链接,ack,快速重传,超时重传,流控,拥塞)

TCP与UDP区别

说说对数据结构理解,从数组,链表引申到二叉树,二叉搜索树,红黑树,B+树,B树。用hashmap和B+树和avl树做对比分析。

快排(自己提出写个非递归的),冒泡,堆排,LC。分析时间复杂度,空间复杂度

Redis五种基本数据结构,底层原理(SDS,hash,跳表)

设计秒杀(分布式锁 Redisson保证释放锁原子性,setnx保证过期时间原子性)

MySQL存储引擎,InnoDB,MyISAM对比,优缺点

Innodb的索引数据结构,聚簇,非聚簇

二面(凉)

400亿文件找数字存不存在(位图)

http渲染过程(面试官***)

x的n次方(快速幂,面试官还是***)

http状态码

网易面试(新闻大数据平台)

一面

项目(token与session,cookie异同,禁用cookie怎么办,为什么用token)等相关流程问题,MD5单向加密过程,RSA双向加密过程

MySQL索引数据结构,聚簇,非聚簇,二级索引是聚簇还是非聚簇(非聚簇,因为聚簇索引有序排列)

Java基本类型与包装类型,分别存在哪,Java值传递问题(面试官下了一个套说值传递和引用传递,实际上Java只有值传递,引用传的是地址值),给了个场景,一个方法接受基本类型参数和引用类型参数,在方法内对元素进行了修改问会不会改变原值

Java线程池,阻塞队列,Java的线程和OS线程区别(我回答的对内核级线程的映射)

场景题:设计一个优先级队列(用的小顶堆,大于堆顶的优先级直接放入堆,删除堆顶元素)

syn泛洪攻击(我说的采用tcp_synccookie解决)

B+树与B树区别

说说你熟悉的数据结构

进程间通信

redis跳表数据结构,时间复杂度,为什么不用红黑树,有哪几种类型

bitmap应用场景,布隆过滤器原理,一定能查到元素存在吗(不能,hash会重复)

string类型和c进行对比分析

redis为什么快

你是如何做MySQL调优的

内核态与用户态区别

LC写题 提示了一下,直接秒 100% 最优解

反馈:基础比较好,有点震惊到了我。但是没有hc了,我去帮你争取一下

网易面试总结

题目很常规,面试官也很友好,面试体验很好,拿了offer已经在职

我的面试经验汇总

下面先给大家上一个总的目录大纲,基础的东西就不进行过多的赘述,我们将会从面试必问的说起,同时由于每篇的内容过多,我们也只说重点,太过基础的内容谁都会,我就不多敲字浪费大家的时间了!
有需要的朋友点击这里自取就好了,希望资料对你有帮助!

SpringCloud

Redis

JVM

MySQL

Zookeeper

Kafka

Dubbo

spring

Rabbitmq

springboot

最后

由于文章篇幅有限,PDF的内容又很多,全部手敲下来很累…所以需要阅读阅读学习的,大家“一件三连后:“查看下方””即可拿到手之后自己学习吧,博主真的打字打累了。

有需要的朋友点击这里自取就好了,希望资料对你有帮助!
预祝大家前程似锦,工作顺利!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值