2022届招聘陆续结束,这里整理了这段时间以来所遇到的Golang后端岗的面试题,主要目标为行业独角兽。
请注意,本处所有所示面试题均不暗示任何特定公司的特定岗位。
通常来说,本文主要面向于初级岗位或应届生岗位为主。
- 网络
1.1 TIME_WAIT
1.2 常见TCP攻击方法:半开连接、攻击防范
1.3 简历上所述的DrDOS,具体怎么做防范的
1.4 常见的协议运行的端口
1.5 HTTP 1.0、1.1、2.0区别
1.6 HTTP1.0的协议报文形式
1.7 TCP和UDP区别
1.8 UDP实现TCP方法
1.9 OSI 7层模型,每一层都有什么代表协议?
1.10 HTTP方法(POST、GET、DELETE),这里嘴贱说了一手RestFul,所以详细问了RestFul。
1.11 接1.10,HTTP方法的幂等性问题
1.12 HTTPs的过程 - 常见IO模型
2.1 多路复用有哪几种。具体谈谈,怎么实现。 - 数据库
3.1 MYSQL常见索引
3.2 BTREE和B+TREE的区别,对应的时间复杂度
3.3 Delete和Trancate区别
3.4 索引一般建立的原则
3.5 接3.4 嘴贱说了一句全文搜索,讲了讲全文搜素方面的设计思路。 - 进程间通信
4.1 方式
4.2 管道方式分为:匿名、命名,具体谈谈区别。 - Golang
5.1 对于GoRoutine的调度理解(GMP)。
5.2 对于Golang程序的调试,性能排查的经历。
5.3 内存模型的理解
5.4 Slice和Array的区别,Slice扩容机制(注意1.18以后新的扩容机制)。
5.5 引用类型有哪些,和值类型的区别。谈谈引用类型的引用二字的理解。
5.6 写一个函数,不断执行,超时OR额外信号时自动结束。
5.7 对于Channel的操作,已关闭写入,已关闭读取,已满读取,已满写入。 - 其他
6.1 怎么理解云原生
6.2 推理题(暂不展开)
6.3 K8s、K3s、Docker一些内部机制问题(具体知识点记不太清) - 算法
7.1 LeetCode 184 - 部门工资最高的员工
7.2 LeetCode 177 - 第N高的薪水
7.3 翻转链表
7.4 快排算法
7.5 数论:0和5组合成最大的能被9整除的数(百度2021届改题)
7.6 更多算法类不再展开。 - 简历项目 暂不展开。
写在后面
有朋友来问我简历项目里面写了哪些东西,很不巧,我的项目很偏门,边缘计算、游戏服务端、高性能数据转发(军工)还有的就是很简单的OA系统之类的内容,但凑巧有几个面试官对项目感兴趣,也交流了非常多的内容,一些设计想法。
项目设计这块是没有银弹的,这方面,契合更重要。本科生的项目嘛,写点自己感兴趣的才会记得更牢、理解地更深入。