这次虽然是面的Java,但是并没有Java相关的八股文,而是中间件的一些知识点。
面试在牛客网平台。大概是以下的一些题目。
应该是看我简历写了RocketMQ,主要问了RocketMQ的一些八股。
- 先简单做个自我介绍
- 哪一个项目比较有亮点或难点,介绍一下这个项目的业务流程
- 知不知道这个项目的业务数据,比如用户量,qps这些
- 简历上写了rocketmq,那rocketmq是怎么保证消息可靠的?
- rocketmq怎么刷盘?
- rocketmq怎么保证主从切换时消息不丢?
- rocketmq的事务消息怎么实现的?
- rocketmq的顺序消息怎么实现的?
接下来是关于MySQL的一些八股。
- MySQL是怎么保证数据不丢的?
- 为什么不直接写数据文件而是写redo log?
- MySQL主从同步是怎么做的?
- MySQL怎么做高可用?如果master挂了,1主2从怎么选出主节点?
- 你MySQL的数据量单表500w,如果扩大10倍,怎么设计?
- 分库分表怎么分?按什么维度分?
- 按用户编号分库分表的话,我用订单号怎么查询?
- 怎么不停机迁移到分库分表?
接下来是一道场景题。
- 抖音直播时,粉丝给主播打赏,考虑高并发,怎么设计?
最后,写一道算法题。
- leetcode199,二叉树的右视图。写完讲一下思路。