美团
小象后台开发(校招全职,非实习)
拿到正式邮件offer了
泪了,接下来好好肝论文
楼主菜哭......希望能对大家有帮助......
时间轴
- 笔试(3-19) 1.8 / 5 (第1、2题)
- 一面(3-23)
- 二面(3-24)
- 三面(3-27)(应该是部门leader不在,临时找了HR来面一下)
- 四面(4-1)
- HR(4-4)
- offer call(4-6)
- 正式offer(4-8)
美团一面
- 介绍自己
- 项目
- 介绍项目(我写的一个辣鸡的秒模块,泪了)
- 怎么保证redis与Mysql的数据一致性(秒杀预热数据的一致性,就解释了不需要一致性,只保证Mysql库存正确即可之类的)
- 见你写了个加随机数预防缓存雪崩,解释一下
- 未改进和改进后的Jmter测试性能对比
- Redis
- 为什么选择Redis作为缓存?
- 为什么Redis的性能十分的高?
- 说一下单进程、单线程的Redis和你平时写的多线程程序的对比
- 如何保证Redis的高可用(哨兵、持久化策略RDB、AOF)
- 解释一下哨兵、RDB、AOF
- 主从一致性
- 大概答了在哨兵中RDB和AOF是怎么配合使用来保证主从一致
- 几个方面
- 从刚启动
- 主从同步
- 主掉线切换
- Redis数据淘汰策略
- 说一下分布式事务吗?
- 不太了解,所以大概答了思路:通过事务实现Mysql和Redis的同步修改,异常回滚啥的
- setnx是事务吗?
- 答了不是(不知道对不对),然后又说了一下Redis本身自带的事务(部分事务,非原子性)
- Mysql
- 解释一下事务
- 事务隔离级别
- 答了并发问题及其对应解决
- 答了RC和RR级别事务的实现:一致性视图、MVCC
- 为什么使用B+树作为索引(答了二叉树、B树、B+树的对比及其应用的优缺点)
- 聚簇索引和非聚簇索引的区别
- 答了聚簇索引:结构、建立(主键上建立、无主键则选择第一个唯一索引,若都没有主键和唯一索引则隐藏有