2020 年—BAT 大型互联网企业刚出炉的一套面试题(Java 岗)
由于近期是互联网寒冬,然而小编的好友还是顶着重重压力出去面试,最终斩获无数 offer。
在小编的沟通下,终于套得其中一套题目,故在此分享!
公司:国内三巨头其中的一家!
面试时间约在 1 月份左右!
基本上都是在晚上,所以不影响白天上班!
一面
一面偏架构方面
1、介绍一下自己,讲讲项目经历
2、你们项目中微服务是怎么划分的,划分粒度怎么确定?
3、那在实践微服务架构中,有遇到什么问题么?
4、你们在关于微服务间数据一致性问题,是如何解决的?
5、你们为什么不用其他的 MQ,最终选择了 RokcetMQ?
6、为什么 RocketMQ 没有选择 ZooKeeper,而是自己实现了一个 NameServer 集群?
7、嗯,理解的不错,Zookeeper 在选举的过程中,还能对外提供服务么?
8、对 Paxos 算法了解多少?
9、如果让你来设计一个春晚抢红包架构,你会怎么设计?
10、有什么想问我的?
大概聊了 40 分钟左右~
二面
二面有点偏底层和算法
1、扯了下项目、讲一下项目经历
2、你们用了 redis,redis 的底层数据结构了解多少?
3、知道动态字符串 sds 的优缺点么?
注:sds 为 redis 底层数据结构之一
4、redis 的单线程特性有什么优缺点?
5、用过 Redis 的哪些数据结构, 分别用在什么场景?
6、你们怎么解决缓存击穿问题的?
注:估计答了 Hytrix
7、Hytrix 的隔离机制有哪些?Hytrix 常见配置是哪些?
8、自己做过哪些调优?JVM 调优、数据库调优都行!
9、给了个场景,问你怎么调
10、一道算法题,具体题目忘了,在给出的链接中作答~
三面
1、讲讲自己基础掌握情况,以及项目经历
2、平时会用到哪些数据结构?
3、链表和数组的优缺点?
4、解决 hash 冲突的方法有哪些?
5、讲讲自己对 HashMap 的理解,以及和 Weakhashmap 的区别?
6、你刚才讲的是 JDK1.7 版本的实现,知道 JDK1.8 做了哪些改动么?
7、你们在微服务中用 RPC 通信还是 REST?
8、RPC 和 HTTP 的关系是什么?
9、知道 HTTP1.0 和 1.1 的区别么?
10、谈谈什么是 HTTP 的长连接和短连接?
11、TCP 的三次握手和四次挥手,以及为什么要三次握手,而不是二次?
12、TCP 有哪些状态,相应状态的含义
13、让你评价一下你自己?
然后问了下面试官还有几轮,面试官说不一定!
四面
1、依然是介绍自己
2、你们数据库的高可用架构是怎么样的?
3、如何保证数据库主从一致性?
4、知道 mysql 的索引算法么?
5、为什么 mongodb 的索引用了 B 树,而 mysql 用 B+树?
6、用 mysql 过程中,有遇到什么问题么?
7、你们生产用的是哪种事务隔离级别,为什么?
8、谈一谈你对微服务架构的理解
9、你用过哪些 RPC 框架,讲讲他们优缺点
10、用过 docker 么,对容器了解多少
11、有什么问我的?
HR 面
问经历,问离职原因,问职业规划,问待遇。
唯一比较奇葩的一个,居然不问你期望薪水~~
总结
面试难度:简单
面试体验:挺好
没有什么特别刁难人的问题,总体体验不错!
大家注意,开始的第一个问题一定是讲项目,如果很多问题都一知半解,就别讲了。
那没有一个拿手都技术?
好好沉淀,有拿手都技术再出山面试~
最后
针对于上面的面试题我总结出了互联网公司 java 程序员面试涉及到的绝大部分面试题及答案做成了文档和架构视频资料免费分享给大家(包括 Dubbo、Redis、Netty、zookeeper、Spring cloud、分布式、高并发等架构技术资料),希望能帮助到您面试前的复习且找到一个好的工作,也节省大家在网上搜索资料的时间来学习,也可以关注我一下以后会有更多干货分享。
资料领取方式:
关注我 点击这里 获取往期 Java 高级架构资料、源码、笔记、视频
Dubbo、Redis、设计模式、Netty、zookeeper、Spring cloud、分布式、
高并发等架构技术
版权声明: 本文为 InfoQ 作者【马小轩】的原创文章。
原文链接:【http://xie.infoq.cn/article/1a5d2d0a3a16c6ef1bce7d86b】。未经作者许可,禁止转载。
评论