今日头条Java面试题,完整版开放下载(2021版)
2021年,字节的技术岗依旧是最香的,而且随着字节的规模不断扩大,机会也越来越多。马上迎来金三银四,很多小伙伴都在撸题备战中。
下面是1月份最新的头条面经,我们来看看今年大厂的Java面试主要考察哪些点。文末还有头条面试官总结的Java面试题,希望大家了解并掌握这些知识点,争取通过每一轮面试!
技术一面
TCP相关基础知识
问题1: 请详细描述三次握手和四次挥手的过程
问题2: 四次挥手中TIME_WAIT状态存在的目的是什么?
问题3: TCP是通过什么机制保障可靠性的?
语言的相关基础知识
问题1: 描述线程、进程以及协程的区别?
问题2: GO语言中的协程与Python中的协程的区别?
网络编程相关基础
问题1: 网络IO模型有哪些?
问题2: I/O多路复用中select/poll/epoll的区别?
HTTP相关基础
问题1: 客户端访问url到服务器,整个过程会经历哪些?
问题2: 描述HTTPS和HTTP的区别
问题3: HTTP协议的请求报文和响应报文格式
问题4: HTTP的状态码有哪些?
缓存和数据库的基础知识
问题1: 描述一下redis有哪些数据结构。
问题2: MySQL场景题目
裸写算法
技术二面
主要考察个人项目经验。
面试官会要求先详细介绍最近的项目,介绍项目的同时会打断你,延伸项目的难度和架构,要求提出更优的解决方案。还问了一些API业务的架构问题,以及HTTP相关问题。
裸写算法
技术三面
考察项目经验,着重系统设计。
要求描述方案以及缺点。这个回答要谨慎,最好面试前对目前的项目假设附加条件,提出2-3种备选方案。
要求模块化,会要求对目前系统如果做微服务架构,如何进行服务的拆分,拆分的规则是什么,考察微服务架构相关知识,服务治理(限流、降级、熔断)。
裸写算法
注意点:
1、手写算法留的时间不多,3-10分钟,3分钟还没写,就要求讲出解题思路。
2、切记面试前一定要刷题和准备,简历上的项目不熟悉的千万不要写上去,写上去的项目备好2-3个技术方案。
因内容较多,获取完整面试题及答案