一面 6.28
- 介绍下gmp模型
- 介绍下golang的map底层,map是线程安全的吗,如何实现map线程安全。
- 介绍一下golang常用的并发手段。
- 介绍一下mysql的innodb, 介绍一下b+树
- redis常见数据类型,常用的使用场景
- 这里你的sql调优基于哪些方面考虑的
- 协程的开销很小,实习中实现的这个协程池的作用是什么
- 如何看待 golang的组合式编程
- 算法两道 :二叉树展开为链表,返回链表的中间节点
二面 7.1
- 主要针对实习中做的事聊天
- 实习中实现了一个分布式限流,你是怎么实现的
- 令牌桶限流利用了redis的什么数据结构,讲一下hash的field和value怎么设置的
- 为什么这里不直接用一个key + expire 时间 去限流呢
- 讲一个你觉得比较难实现的事儿,介绍了 刷库脚本深度分页问题的处理及后续的clickhouse改造,改造方式, 回调接口同步clickhouse,再依据clickhouse 时间分片刷库
- 算法 : 最长回文子串 dp和中心扩散都写了一下。
7.4 oc 逼当天接,拒了