最近在群里看到有许多大佬都在分享自己的面试经历,大佬们面试的互联网公司都好高大上。整理出一份百度Java工程师的三面面经,希望对大家能有帮助。
一面(50min过)
1、首先是自我介绍;
2、关键 SQL 优化怎么优化的?为什么性能不好?主键必须有吗?数据索引密集度很差的话,优化意义不大吧?
3、MySQL 有哪几种索引?聚簇索引和辅助索引的区别?索引数据结构?为什么用B+树?
4、MVCC?版本号怎么变化的?更新的数据的时候怎么确定版本的?幻读怎么解决的?
5、 一个 SQL 怎么走的索引?MYSQL 会怎么选的?MySQL 哪些不正规的写法无法命中索引?
6、MySQL 有哪几种日志?redo log 主要有什么用?提交之后 100%落盘吗?为什么MySQL 要写到 redo log buff 内存?
7、redis 一般怎么用的?为什么选择用 redis?为什么 redis 快呢?
8、 redis 几种数据类型?redis string 的底层实现?
9、分布式锁用