服务端开发面经
📍面试公司:金山 WPS
👜面试岗位:服务端开发(一面 40min)
📖面试问题:
🙌面试体验:面试官很好,一直在问我看的书看到哪种程度了,根据我看的内容问的。
- 自我介绍
- 题外话
- 问了几个项目问题
- 你说一说TCP的三次握手和四次挥手
- HTTP的通信流程
- 状态码知道哪些 4xx 5xx
- 499状态码了解吗
- 如何解决在不同网络环境下kafka的通信问题(场景题,但是算是开放性问题)
- TCP和UDP的区别是什么
- 你说UDP是尽最大努力传输,就是说UDP是不可靠的吗?(是的,但是现在有QUIC协议,他是建立在UDP之上实现的一个可靠传输)
- 那你说说QUIC协议(说了一些自己的理解)
- 堆和栈的区别
- 堆的大小是多少
- JVM怎么调整堆的大小
- 垃圾回收机制了解吗
- G1里面用了哪些算法
- 循环引用问题
- Linux的网络模型有哪些
- select和epoll的区别是什么
- Spring底层网络容器是什么(Tomcat)
- Tomcat的网络模型了解吗
- Redis的数据类型有哪些
- 这些数据类型的底层是那些
- 什么时候用LinkedList 什么时候用压缩链表
- Redis的分布式锁怎么实现
- 场景:如何做一个高并发的可以生成有序ID并且带有时间标识的ID生成器
- 有一百万个数据,如何分为两堆,一堆比另一堆都大。
- 一个链表如何判断有环
- 进程通信有哪些
- Mysql索引你了解哪些
- 建立索引要考虑哪些问题
- 索引失效的场景有哪些