GO 三年社招小鹅通二面@小鹅通
一面:GO 三年社招小鹅通一面 | 面试ICU (mianshi.icu)
小鹅通的面试总的来说对于基础的考察比较多,尤其是在网络这边。
0
00更新时间: 2025-10-24
岗位描述
参考一面。
分析内容
参考一面。
- 自我介绍
- 你可以就你经历过的项目展开聊聊么
- 说了项目中的榜单
- 过程中也聊到负载均衡问题
- 过程中使用kafka保证缓存一致性,是怎么样保证的
- 这里面试官说是为了汇总数据?我回答这里只是用于信号量,如果是数据的话,有相关顺序消息问题,处理起来会比较棘手
- 使用kafka的话,可以做到消息的有序消费么
- 回答分区内是有序的,然后再提出了一致性哈希负载均衡算法来进行多分区有序
- Kafka消息丢失问题怎么解决
- 服务之间通信方式,有RPC和消息队列,引入消息队列有什么弊端
- 异步消息重试时候,你会注意哪些地方
- 线程和协程的区别
- tcp和udp的区别
- 你有基于tcp二开么
- http和https区别,你来说一下https的加密过程吧
- 零拷贝你说一下原理
- MySQL有做过什么优化么
- Order by:利用索引排序
- 慢查询日志排查
- 隐式类型转化问题
- SQL语句优化过程中,你提到有两个索引,有一个走了,一个没有走,那两个索引区别是啥
- 回答了相关索引的列区别
- 索引失效的场景有哪些呢?
- 联合索引失效的场景,你知道为什么
- 有一个表他有一个字段,他有一个枚举值字段a,枚举值上有索引,枚举值取值有10个,这个表有100w数据,每个枚举的数量有10w条,那select * from tbl where a = xxx,你觉得会走索引么
- InnoDB使用间隙锁的目的是什么
- 你知道LRU么,使用场景是什么
- 场景题:分布式任务调度平台,你来设计一下
第一个问题是非常常规的问题,但是很显然这个小伙伴的自我介绍没有针对性。在岗位分析的时候,我指出这个岗位里面有要求性能优化有关的点,所以在自我介绍的时候就应该有针对性的做一个总结强调,例如:
我擅长性能优化和问题排查,有丰富的 SQL 排查和优化经验。(如果你会PHP)我也擅长优化 PHP 的性能……
第 2 个问题等价于你的项目有什么难点,那么你应该使用有技术深度的,并且是面试官能够理解的项目难点。从这一点上来说,该同学的回答很不错,而后面试官在后续也是沿着他的回答进一步追问,可惜的是追问的不是项目的细节,而是追问到了 Kafka 上。
问题 3,4,5 都可以看做是从 Kafka 中衍生出来的问题,非常基础。
中间的 8,9,10,11 都是网络有关的,而在一面中,也是问了很多和网络有关的问题。
后面的问题大部分都是和 MySQL 有关的,这一类的问题也算是常考的基础题目,只要实现准备好案例就可以的。包括 SQL 优化案例,索引失效的案例等,甚至于可以用一个案例串联起来这两种情况,也就是它是因为索引失效导致的慢查询,而后你去做了一个性能优化。
最后一个场景题是设计一个分布式任务调度平台,这个其实是一个很复杂的话题,目前在这个网站里面还没有对应的题集,但是我在 B 站里面有一个分享,是我在极客时间的专家训练营里面讲的分布式任务调度平台的模拟面试题,可以参考: