美团1~3轮面经
约了Hr面,好久没写面经来回馈一下社会,许愿一波OC~
三轮面试一直在问八股和场景,项目加一起问了平均问了不到10分钟,不知道是不是因为基架组的原因。
记录一下一些印象比较深的八股吧。
- 用Go语言设计一下类似信号量的实现该怎么设计。
- Go的switch机制,select机制。
- Go的GMP,协程的优势。
- K8S相关架构,调度器具体的策略。
- 设计一下数据库动态扩缩容的场景。
- 一条慢Sql怎么分析,explain具体的字段。
- TCP重传机制,如果重传一次还是没收到会怎么样。
- TCP四次挥手Time Wait和Close Wait分别是干什么的。
- TCP Socket 编程有哪些操作,握手和挥手具体实现怎么做。
- 什么是僵尸进程,如何排查。
- 怎么理解虚拟内存的,虚拟内存的作用是什么。
- 进程通信用共享内存有几种方式,实现上怎么做。
- 操作系统的进程线程区别和调度,二者通信的区别。
- 父子进程Fork()做了什么,返回值是什么
- 操作系统的整体框架。
- 磁盘具体是什么样的,寻道怎么处理。
- 文件系统结构和索引。
- 文件过多会怎么样。
- Mysql索引分类,以及具体每类的定义。
- Mysql两阶段提交,具体流程。
- 可重复读级别为什么无法解决幻读。
- Mysql整体架构。
- 数据库主从怎么设计。
- CAP怎么理解,为什么只能CP或者AP。
- BASE说说理解。
- etcd是AP还是CP,具体怎么做的CP。
- Raft具体实现,选举过程中如何投票,如果选举不出Leader会怎么样,选举的时候投票节点term比候选者大会怎么样。
- etcd的mvcc怎么设计。
- rpc框架整体设计。
- 服务注册具体怎么实现。
- 有没有了解的序列化和反序列化方式,具体怎么做的。