集体背景

自己毕业于二流一本大学非计算机相关业余,大三下学期开始学java。目前刚好工作两年,业余后端,base深圳。

面试流程

  • 一面二面电话面
  • 三面四面视频面
  • 主管电话面
  • hr电话面

整个流程下来就两个礼拜,比阿里高效多了。面试的是网易杭州研究院的职位,原本三面通过后HR分割我说是要去杭州总部让主管进行个现场面试,而我在深圳,就通知hr我这边不不便看能不能安顿视频面试,而后就又加了一轮技术视频面。顺带说一句,网易的hr真是超级nice啊,加了微信私下聊得很嗨皮~

作为浏览福利,我也把我的复习资料(Java学习笔记+面试真题)都整顿好了,须要的可【点击此处】支付。

重点:面试题

面试题内容包含Java根底、开源框架、数据库、redis、网络、Nginx、Linux、情景模仿&其余

java根底

1.定义Integer x=20 Integer y=200 在内存里是个什么过程?
2.volite关键字的原理?它能保障原子性吗?AtomicInteger底层怎么实现的?
3.threadLocal关键字有用过吗?如果没有重写initialValue办法就间接get会怎么?
4.hashMap与concurrentHashMap原理和区别?
hashMap什么状况下会呈现循环链表?concurrentHashMap写的时候用什么锁?RenteenLock底层是怎么保障线程平安的?
5.反射能获取到父类的公有办法吗?怎么避免反射毁坏单例模式?
6.形容下JVM内存模型。每个区的作用是什么?堆内存的工作原理,为什么须要两个幸存区?只有一个行不行?老生代是用什么垃圾回收算法?
7.形容下多线程原理。怎么开启一个线程?start和run办法有什么区别?
怎么创立一个线程池,传入的参数别离什么含意?线程池是怎么实现维持外围线程数的?怎么实现一个自定义的回绝策略?
8.Socket编程 nio(这一块我不太熟就说没理解过,面试官就没细问了)

开源框架

1.你用过哪些开源框架?最相熟的是哪个?(这里我说了spring,所以后边的问题都是围绕spring的)
2.形容下spring的ioc和aop。
你罕用哪一种注入形式?BeanFactory和ApplicationContext有什么区别?你们我的项目里用的哪个?说一下spring bean的生命周期。
AOP实现原理是什么?两种动静代理实现原理?JDK动静代理为什么要实现接口?
3.spring task是怎么实现的?
4.spring事务你是怎么用的?加了@Transcational注解spring都做了哪些工作?怎么晓得事务执行胜利了?
事务隔离级别?mysql默认级别是什么?事务流传属性?spring默认是什么?嵌套事务子事务什么时候commit?
5.spring和springMVC是什么关系?有没有用过JdbcTemplate?
6.springMVC中对整个申请的解决流程是怎么的?返回json的话是用哪个view?

数据库

1.mysql索引是怎么实现的?b+树有哪些特点?实在的数据存在哪里?
2.哪些状况下建索引?解释下最左匹配准则?
3.当初一个表有三列a b c,组合索引(a,b,c)查问的时候where a like ? and b=? and c=?能用到这个组合索引吗?为什么?
4.explain执行打算看过没有?其中type字段都有哪些值?别离代表什么?
5.你有哪些sql调优教训?

Redis

1.redis有哪几种数据结构?给你一个key怎么晓得是用的哪种构造?
2.怎么查看所有的key?redis怎么切换库?怎么清数据?
3.形容下redis淘汰策略?如果没有数据能够淘汰活着没有配置淘汰策略读申请能够失常执行吗?
4.你们我的项目里redis是单节点的吗?如果多节点怎么同步?
5.我的项目里用redis存哪些数据?为什么用redis?和jetty本地缓存有什么区别?

网络

1.HTTP 1.1版本减少了哪些内容?有哪几种申请形式?
2.形容下HTTP三次握手和四次挥手过程?为什么须要四次挥手?为什么TIME_WAIT状态须要通过两个最大报文段生存工夫能力到close状态?
3.浏览器发动一个申请到收到响应两头经验了哪些过程?晓得多少就说多少,越具体越好。

Nginx

1.nginx有哪些模块?你比拟相熟哪个?
2.proxy_cache你是怎么配置的?缓存是存在哪里?具体是怎么命中缓存的?
简历里有写nginx,后果问得几个问题我都没答好,面试官就没再多问了,囧~

Linux

1.怎么查看某个过程中的线程?
2.怎么批量替换一个文件夹下所有文件中的一个字符?(sed命令)
3.有没有用过jps jmap jstack jstat 命令,别离说下有哪些罕用参数,晓得多少就说多少。
我这里联合本人用jmap jstack定位到线上问题的教训说的,答完后感觉面试官挺称心的,所以说实际很重要啊~

情景模仿&其余

1.设计一个零碎,每天有100亿条数据,须要在后盾做实时展现和查找。
我过后答复的大体思路是nginx负载平衡,音讯队列存储,多线程读取,批量插入,数据库分库分表。
面试官依据我的答复又衍生出了很多问题,如音讯队列存满了怎么办?(也就是生产跟不上生产)批量插入时某一条失败了有什么影响?怎么解决?分库分表应该怎么分?怎么解决数据迁徙的问题?
2.用代码实现cat 1.log |grep a |sort |uniq -c |sort -rn 的性能。
3.如果当初有一台服务器忽然变得很慢,怎么去定位问题?

感悟

1.不要不可一世。

  • 很多人感觉本人学校不好业余不对口,进不了大公司,连去面试的勇气都没有,其实越是大公司越是看重集体能力而不是历史战绩。

2.面试前肯定要筹备短缺,不然就是节约单方工夫。

  • 很多人不屑于长期抱佛脚,你如果感觉这是长期抱佛脚那就是抬杠了。我这里说的筹备次要有两点:第一,简历上的内容肯定都是本人很熟的货色,面试官会依据他感兴趣的中央衍生出很多问题,可能问到的点都提前想一下。第二,肯定要有一两个本人很相熟的畛域,能够具体到某个技术点或者某个框架,然而肯定要钻研透彻。

3.要长于思考、总结、反思,这些能力是能够训练的。

写在最初

这里只列出了网易面试中问到的问题(其余公司其实问得也都差不多)须要上述面试题及答案文档可【点击此处】即可取得,以下材料也可点击链接支付!

Java外围知识点

1000道互联网工程师面试题

大厂面试真题

视频学习材料