背景
在LearnKu看到了一篇面试题的文章《分享一下最近的面试题,都是大厂(BAT TMD)》 https://learnku.com/articles/63520
面试题内容如下
mysql
- 有哪些事务隔离级别,Mysql 的事务隔离级别是怎么实现的?(每家都问)
- 索引原理(每家都问)
- 分库分表的策略,如果要按照分表字段以外的字段作为查询条件怎么办(每家都问)
- MVCC 和间隙锁原理(滴滴 字节 百度)
- explain 的 type 字段有哪些(知乎)
- update 语句的执行流程,binlog 的作用和几种格式(滴滴)
- 主从同步的原理和问题(字节 滴滴 陌陌)
- 发生死锁的原因以及如何解决(滴滴 顺丰)
-
redis
缓存如何保证一致性(每家都问)
- 用过 redis 哪些数据结构,使用场景是什么(每家都问)
- redis 的 connect 和 pconnect 的区别,pconnect 有什么问题(滴滴 陌陌)
- redis 如何实现分布式锁,有什么问题(陌陌)
- redis 为什么用跳表实现有序集合?原理,用有序集合的场景(字节 滴滴)
- 主从同步的原理,哨兵和集群的区别(滴滴)
- redis cluster 用的什么协议同步数据,哨兵的选举呢(陌陌)
- rdb 和 aof 的原理(滴滴 高德)
- 数据过期和淘汰策略(滴滴 高德 字节)
-
php
php-fpm 的生命周期,创建进程方式,各自的优缺点(腾讯 百度 滴滴 陌陌)
- php 数组遍历为什么能保证有序(滴滴)
- php 怎么实现的弱类型,怎么实现一个扩展(腾讯)
-
es
深度分页会有什么问题(滴滴 百度 陌陌)
- 倒排索引的原理(字节 高德)
-
kafka
kafka 的架构,大致储存结构(高德 字节 滴滴)
- 如果消费者数超过分区数会怎么样?(顺丰 滴滴)
- 怎么保证数据的可靠投递?(陌陌 字节)
- 消费者的 offset 存在哪里?(字节 腾讯 陌陌)
- 如何通过 offset 定位消息?(字节)
- 时间轮的原理(陌陌 顺丰)
kafka 写入高性能的原因,sendfile 和 mmap 原理,为什么不用 splice(滴滴)
网络
https 原理,tls 握手需要几个 rtt?(滴滴 百度)
- 浏览器访问某个网址的详细过程,四次挥手(腾讯 滴滴)
-
分布式系统
分布式事务怎么处理(高德 陌陌)
- 简述 raft 原理(陌陌)
- 分布式 id 的几种实现和优缺点(滴滴)
-
其他
布隆过滤器的实现原理和使用场景(滴滴)
- 进程间通信有哪几种方式(腾讯)
- 进程线程协程区别(滴滴 知乎)
- lvs 原理,如何保证高可用(滴滴)
- 502 504 什么原因,如何处理(滴滴 百度 腾讯 顺丰)
- 给你两个一模一样的玻璃球,求出 100 层楼哪一层开始玻璃球会被摔碎(腾讯)
一致性 hash 原理,怎么解决节点少数据倾斜的问题(滴滴 陌陌)
系统设计
设计秒杀系统,需要支持 100W 以上 QPS(滴滴)
- 设计微博首页,需要拉取所有关注用户的最近 20 条微博(百度)
- 抢红包算法设计(百度 滴滴)
-
算法
leetcode 中等
