滴滴一面4月17号(已挂)
- 请先做一个简单的自我介绍。
- 挑一个你觉得做得最好的项目,详细介绍一下。
- 你觉得这个项目里面最有挑战性的部分是哪一块?
- 你在参考开源/现有方案的过程中,自己做了哪些改进?
- 在开发过程中,有遇到过上下文过大的问题吗?怎么处理?
- 你的长期记忆和短期记忆分别是怎么做的?
- 你提到的“强约束信息”会不会越积越多?如果越来越多,你怎么处理?
- 你简历里写了熟悉 MySQL,MySQL 在你的项目里主要用在哪些场景?
- 具体讲一下你项目里的数据一致性场景。
- 你说的最终一致性,具体是怎么实现的?
- 如果消息发送失败了,这个任务到底算成功还是失败?
- 在发送消息之前,你是不是还做了消息持久化之类的处理?具体流程是什么?
- Redis 扣库存成功之后,消息发送到 MQ,如果这个消息发送失败了,会不会重发?怎么重发?
- 如果消费者已经执行成功了,但是 ack 因为网络问题没返回,会发生什么?你怎么处理重复消费?
- 假设 Redis 扣成功了,消息也发出去了,但数据库那边挂了或者消费失败了,这时候 Redis 和 MySQL 怎么保持一致?
- 如果消费方挂掉了,重启之后你怎么恢复数据一致性?谁来触发 Redis 的回滚或修正?
- 如果你根本不知道哪些数据不一致、哪些数据丢了,那你怎么办?
- 你提到版本号/offset 之类的机制,那这个对比校验是在什么场景、什么时机触发的?
- 如果不想额外引入一个第三方监督组件,还有没有别的方法解决这个问题?
- MySQL 有哪些事务隔离级别?
- 可重复读这个隔离级别,具体是怎么实现的?
- 你说查询时会生成快照,这个快照是什么意思?它是把整张表复制下来了吗?
- 你提到版本链,那这个版本链具体对应什么日志?
- undo log 会不会随着事务不断执行而越来越长?
- 如果 undo log 越来越长,MySQL 是怎么处理或者清理它的?依据是什么?
- 那些 undo log 哪些可以删、哪些不能删,怎么判断?
手撕:一个BFS搜索,用的赛码网,有bug没改出来
总结:undolog的清理不知道,被深问了直接击穿,下次直接说不知道好了;同时自己的电商项目了解得不够彻底,身心俱疲
#java##java大厂暑期实习##暑期实习##我的求职进度条#
查看3道真题和解析
