2024-09 秋招滴滴一面(50min)

补发一下之前秋招的面经,涨点经验,毕业就待米了,希望能变成红名大佬,滴滴一天连续三场面试(10 点到 14 点,饭都没吃),隔了几天挂掉了,面试过程压力好大,不问八股的

其实这三场都是全问项目+实习+场景题,但是用 deepseek 优化了下描述,变得通用一些。

一、项目经验与系统设计

  1. 请分享你在技术面试中的自我介绍思路,重点说明如何突出技术亮点?
  2. 能否以你主导或参与的一个项目为例,阐述其业务背景、核心解决的问题,以及技术方案中的关键挑战?
  3. 在分布式系统中引入消息队列(MQ)通常为了解决哪些问题?结合你的项目说明其必要性。
  4. 有人提出用异步线程替代MQ实现解耦,这种方案的潜在风险是什么?如何权衡选择?
  5. 消息队列选型时主要考虑哪些因素?以RocketMQ为例,它的核心设计理念是什么?

二、缓存与数据库设计

  1. 项目中如何制定缓存策略?哪些场景适合用缓存?缓存穿透/雪崩如何应对?
  2. 是否所有数据都应缓存?如何判断数据是否需要缓存?缓存更新策略如何设计?
  3. 分布式锁的实现方式有哪些?以Redis为例,如何保证锁的原子性和防误删?
  4. Redis实现分布式锁时,Lua脚本相比普通命令调用的优势是什么?请用伪代码说明防误删逻辑。

三、高并发与限流

  1. 高并发场景下,如何设计流量控制机制?Sentinel中常用的限流算法有哪些?
  2. 令牌桶算法的核心原理是什么?如何设计一个分布式的令牌桶限流服务?
  3. 实现分布式限流时,如何避免依赖异步线程维护令牌?关键数据结构如何设计?

四、扩展思考

  1. 在系统设计中,"削峰填谷"有哪些常见手段?MQ在其中起什么作用?
  2. 如果让你重新设计一个高并发系统,技术栈选型会关注哪些指标?(可结合Redis/MQ/DB等展开)

面完 5 分钟发了二面邀请

#牛客AI配图神器#

#Java##软件开发笔面经#
后端开发笔面经 文章被收录于专栏

主要收录一部分我的笔试面试经历文章,欢迎订阅。

全部评论

相关推荐

04-26 15:09
已编辑
美团_测试开发(准入职员工)
面试官是女生,没开摄像头,进来先介绍技术栈,是否接受php整体30min1. Linux命令,文本处理;只问了我是否熟悉,我说熟悉,没深挖了2. 查看正在运行Java的进程;netstat、lsof,面试官回复ps命令呢,我说也用过,和lsof差不多,都可以查看3. 有没有用过MySQL集群,如果部署在单机,有没有保证可用性;因为是单体,评估了连接数,并且用了redis减轻压力进行兜底4. 提了一嘴RocketMQ,问我是用过的对吧;我说是的,没深挖5. MySQL索引结构;为什么要用B+树;聚簇索引和非聚簇索引6. 唯一索引是聚簇还是非聚簇?瞎猜了说是非聚簇,面试官让展开说说,回答是唯一索引只需要判断有没有重复,没必要用到聚簇索引,非聚簇够了。7. WAL技术?没听过,面试官说是数据库当中的预写日志,undo,redo,然后我回答了binlog,redolog,undolog8. CPU突然变高了怎么排查?top命令先定位进程,如果是程序,查看日志,看看是不是死循环了,定位后去修改;感觉没答好。9. springboot注解,MVC机制原理,回答了是通过拦截器拦截所有请求,根据URL去映射Controller10. 计网 浏览器输入URL整体流程11. 大整数相加,不用加法;不会12. 合并有序链表;ok13. 场景题,抖音的点赞,怎么设计,用到了哪些组件,表结构14. 两个文件,一个50w的URL,一个500,找到相同的URL15. 反问,能否提前实习
查看15道真题和解析
点赞 评论 收藏
分享
04-28 08:33
已编辑
东北大学 Java
# 更新:挂---## 限流1. 你是用 Sentinel 做了限流是吧?然后你用的限流算法是什么?  2. 除了滑动窗口算法,你还知道哪些限流算法?  3. 你的 Sentinel 默认给他做了实现,选择令牌桶或者漏桶算法,用 Redis 来实现一下?  4. 直接点来说,你用了哪些 Redis 的命令?怎么设计的?---## JWT5. 说一下分布式集群的身份认证难题,你的难题是在哪?  6. 你在保存客户端的是什么信息?把用户信息保存在哪?会不会被破解了?  7. 这个的问题是不是可以用更简单的方式去解决?  8. 把 session 保存在 Redis 中,如果用 Spring Boot 来实现怎么做?---## RingBuff9. 讲讲环形队列的数据结构?  10. 就是说环形队列的一个具体数据模型,比如说你要手写一个环形队列,要写哪些属性?  11. 各个方法做了什么操作?  12. 指针怎么移动的,环形队列的详细细节?---## TreeMap13. 看你说用 TreeMap 来解决一个快速匹配的订单需求,说一下具体的事情?  14. 交易的时候,比如说我以 a 价格是吧,交易 5 手,要卖买入 5 手是吧?你看现在要进行撮合,然后可能去卖普通里面有一个也是 a 价格卖出,对吧?但是他需要卖出 10 手,这时候你就你是具体代码做的是哪个操作?  15. 在这个挂单系统中,买家和卖家肯定发生了一笔交易订单,TreeMap 相当于一个本地缓存,怎么保存它的一致性?  16. 你说的是一个常规的旁路缓存的一个思路,但是在你这个系统中,你的 TreeMap 数据结构的更新应该是怎样的?  17. 只要有一个订单来,你就开始去做,相当于有一个订单提交接口,我们提交了一个买单或者一个卖单,然后你同步去完成这个事情?(这里确实是有点紧张了,我是用 RocketMQ 异步来完成的,但是没说出来)---## 分布式18. 异步写回数据库消息会丢失吗?(这里应该是想问消息丢失的解决方法,结果我说简单的情况不会丢失)  19. 消息会重复吗?  20. 分布式锁是吧?你还提到了事务消息,那就简单说一下什么叫事务消息?(没事给自己挖坑)  21. 分布式事务的一致性有几种实现方式?(只记得一个两阶段提交)---## 点评22. 用 ThreadLocal 和拦截器来做 token 校验,说一说具体的场景和具体的实现?  23. 你用 ThreadLocal 来解决什么问题?  24. 拦截器具体指的是什么的拦截?(有点脑子不转了)---## 手撕- N 皇后---## 总结1. 因为看别人的面经基本上都是八股,所以这两天主要准备的都是八股的问题,项目来说还是不太熟吧,当然他问的问题。感觉也比较随性和有的地方比较偏。当然自身对项目的熟悉程度还是不够,所以接下来还要深入去学习和理解。  2. 还有就是有些问题的表述不够清晰,甚至来说比较混乱,所以还是要多练习表达吧。
点赞 评论 收藏
分享
评论
3
10
分享

创作者周榜

更多
牛客网
牛客企业服务