您的位置:首页 > Web前端

三面网易,四面阿里,五年Java开发工程师剑指大厂斩获双offer

2020-01-11 15:55 726 查看

前言

大厂意味着什么?

进入大厂,意味拥有更高的薪资、优质的人脉以及令人羡慕的工作环境和福利待遇。但是,大厂虽好,它的竞争却也非常激烈,漫长的面试流程,就已经让很多人望而却步了。而内推,却能够让你和大厂更靠近一步,工作5年的我,在今年也有幸拿到了内推名额。

自我介绍:

坐标杭州,某电大计算机本科毕业,工作经验5年,Java方向,今年的职业规划有了新的打算,机缘巧合获得了网易和阿里的内推机会,成功拿到双offer,特分享一下自己的面经,希望能够帮助到更多程序猿们。

 

网易(网易严选部门):2轮技术面+HR面

Java基础:

  1. 定义Integer x=20 Integer y=200 在内存里是个什么过程?
  2. 讲一下HashMap与concurrentHashMap原理,它们有什么区别吗?
  3. HashMap什么情况下会出现循环链表?
  4. concurrentHashMap写的时候用什么锁?
  5. RenteenLock底层是怎么保证线程安全的?
  6. 描述下JVM内存模型,分别说一下每个区的作用。
  7. 堆内存的工作原理
  8. 描述下多线程原理
  9. start和run的区别
  10. 线程池
  11. volite关键字的原理,AtomicInteger的底层实现
  12. ThreadLocal关键字

开源框架:

  1. 用过哪些开源框架,说一说你最熟悉的(围绕回答展开,我回答的Spring)
  2. 描述下spring的ioc和aop。
  3. 常用的注入方式
  4. Spring bean的生命周期
  5. AOP实现原理
  6. Spring task的实现原理
  7. Spring事务
  8. Spring和Spring MVC的关系
  9. SpringMVC中对整个请求的处理流程是怎样的?

数据库:

  1. Mysql索引的实现
  2. b+树
  3. 现在一个表有三列a b c,组合索引(a,b,c)查询的时候where a like ? and b=? and c=?能用到这个组合索引吗?为什么?
  4. 说sql调优经验

Redis:

  1. redis的数据结构
  2. redis淘汰策略
  3. redis单节点和多节点
  4. redis的数据储存

网络:

  1. HTTP 1.1版本增加了哪些内容?有哪几种请求方式?
  2. 描述下HTTP三次握手和四次挥手过程?为什么需要四次挥手?
  3. 为什么TIME_WAIT状态需要经过两个最大报文段生存时间才能到close状态?
  4. 浏览器发起一个请求到收到响应中间经历了哪些过程?

Nginx:

  1. Nginx模块,说说你最熟悉的
  2. proxy_cache你是怎么配置的?缓存是存在哪里?具体是怎么命中缓存的?

Linux:

  1. 怎么查看某个进程中的线程?
  2. 怎么批量替换一个文件夹下所有文件中的一个字符?(sed命令)
  3. 有没有用过jps jmap jstack jstat 命令,分别说下有哪些常用参数。

 

 

阿里巴巴(蚂蚁金服部门):3轮技术面+HR面

操作系统:

  1. 进程间通信有哪些,请详细说明一下自己在哪种场景下用过哪种方式?
  2. 死锁是怎么产生的?说一下
  3. Java中的线程有几种状态?
  4. os中管道的实现
  5. 解释一下分段和分页
  6. 虚拟地址、逻辑地址、线性地址、物理地址的区别
  7. 协程和线程和进程的区别,你是怎样理解的?

网络:

  1. 为什么三次握手四次挥手?三次挥手可不可以?
  2. OSI和TCP/IP的区别
  3. http server服务,现在要做一个针对用户维度或者接口维度的频控,假设一秒100这种,问在不改变原有接口服务的情况下,你如何实现?
  4. 网络安全相关,csrf这种攻击如何防范
  5. 各种协议问我了解过没有,例如TCP/UDP/ICMP,这个问题比较常见
  6. 微服务和http服务的区别,你对两者是怎样理解的?

数据库:

  1. 你自己使用MySQL中遇到过乱码问题没有,如何解决的,产生原因是什么?
  2. Select * From table_name where filed_name != NULL 这个sql语句是什么意思,你觉得有没有问题?
  3. 关键字where和having的区别,说一下
  4. 介绍一下MySQL数据库引擎innodb,及MySQL的四种隔离级别
  5. 用过什么索引,使用这个索引有什么要注意的
  6. 数据的分库分表会产生什么问题,如何解决?
  7. 写一个sql语句,给表t_score 字段 id(int),score(varchar),team1_id(int),team2_id (int)
  8. 给表t_team 字段id(int),name(varchar),完成输出这种效果的语句(一条完成):id:xx,team1_name:中国,team2_name:日本,score:4:1

算法:

  1. 给你一个正整数k,可能会很大但不超过integer_max,再给你一个正整数m(0-9),问1-k中间有多少个数,m出现了多少次,如给你k=12,给m=1,那么11,1,12这三个数,1一共出现了4次
  2. 一个N阶int矩阵,人从(0,0)开始走,只能往上或者往右走,矩阵内的数值是该坐标的分值,分值只能获取一次,问这个人从(0,0)走到(N-1,N-1)再走回来,往返获得的分值最大是多少

redis:

  1. redis里的五种数据类型
  2. 解释一下redisObject和SDS
  3. redis里的sort set为什么要用跳表不用红黑树,那跳表实现原理说一下
  4. 缓存不一致如何解决
  5. redis持久化,aof里的文件写入和文件同步解释一下
  6. redis持久化aof和rdb分别适用于什么场景
  7. redis各种数据结构,操作的时间复杂度
  8. redis的主从复制原理,有没有可能写操作写到主,读操作读到从,那么读不到最新的数据,但是我如果偏要保证一致性,那如何解决?

kafka:

  1. 概念解释,producer/consumer/partition/topic/offset/broker
  2. kafka为什么和其它mq比起来,吞吐量高这么多,你有思考过kafka适用于什么场景吗,或者你说下你对不同mq产品的对比
  3. kafka高可用里的cap理论,谈一下你的理解
  4. kafka如何保证消息不被重复消费
  5. kafka里的消息我要指定存到不同的数据源该怎么做?

总结

面试,并没有你想的那么难,很多人明明技术够了,但是却还是不敢去大厂面试,大厂除了问题难了一点也没什么,这里没面过还能去面下一个部门,或者下一家公司;心态很重要,在这里,希望大家能保持一个良好的心态,祝大家无论面哪家企业,都能拿offer;

上面的面试题小编都整理成了文档,限于篇幅原因,相关的答案没有放出来,有感兴趣的程序员朋友,可以帮忙转发文章后,关注私信回复【面试资料】来获取

 

 

 

  • 点赞
  • 收藏
  • 分享
  • 文章举报
gyhycx 发布了56 篇原创文章 · 获赞 49 · 访问量 2083 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: