美团全栈一面面经(40min)

美团 · 全栈开发 · 一面 · 2026-03

面试题目

项目介绍

  1. 简历上的三个项目全部介绍一遍,并追问细节。

基础与设计

  1. HTTP 接口设计过吗?
  2. 设计模式了解吗?
  3. MySQL 的事务讲解一下。

项目深挖

  1. 游戏项目的定时器是怎么实现的?如果想要每天十点钟定时发送要怎么设计?有没有更优雅一点的方法?
  2. 这个 HTTP 服务器在网上能用吗?做了什么接口吗?
  3. AI 是怎么提效的?
  4. 稳定性的几个指标了解吗?
  5. 你这个项目前后端是如何进行通信的?

技术广度

  1. Java 的中间件有了解吗?

职业规划

  1. 后续有兴趣做后端吗?你会怎么学习?

参考解析

Q4. MySQL 事务

  • 事务四大特性(ACID):原子性、一致性、隔离性、持久性。
  • 四种隔离级别:读未提交、读已提交、可重复读(MySQL默认)、串行化。
  • 可重复读通过 MVCC(多版本并发控制)+ Next-Key Lock 解决幻读问题。
  • 常见命令:BEGIN / COMMIT / ROLLBACK

Q5. 定时器实现 & 每天十点定时任务

  • 简单定时器可用最小堆或时间轮实现,轮询到期任务并执行。
  • 每天固定时刻触发:计算当前时间到目标时刻的时间差,到期后重新注册下一个24小时的任务。
  • 更优雅的方案:使用 Cron 表达式(如 0 0 10 * * ?),配合调度框架(Quartz / xxl-job)或系统级 cron,避免手动计算时间差,支持持久化和分布式调度。

Q8. 稳定性核心指标

  • 可用性(Availability):SLA,如 99.9%(全年故障时间 ≤ 8.76h)。
  • 错误率(Error Rate):请求失败比例,通常监控 5xx 占比。
  • 响应时间(Latency):P99/P95/平均延迟,反映长尾性能。
  • 吞吐量(QPS/TPS):系统单位时间处理请求数。
  • 故障恢复时间(MTTR):平均恢复时长,越短越好。

Q9. 前后端通信方式

  • 最常见:RESTful HTTP + JSON,前端 fetch/axios 发起请求,后端返回 JSON 数据。
  • 实时场景:WebSocket 双向通信,适合游戏、聊天等低延迟需求。
  • 也可提及 SSE(服务端推送)或 gRPC(内部服务间)作为加分项。

Q10. Java 中间件

  • 消息队列:Kafka(高吞吐)、RocketMQ(美团自研基础)、RabbitMQ(低延迟)。
  • 缓存:Redis,支持多种数据结构,用于热点数据缓存、分布式锁。
  • 注册中心/配置:Nacos、Zookeeper。
  • RPC 框架:Dubbo、Spring Cloud OpenFeign。
  • 面试可重点介绍 Redis + Kafka,这两个在美团使用极为广泛。

Q3. 设计模式

  • 建议掌握高频模式:单例(懒汉/饿汉)、工厂、观察者、策略、装饰器、代理。
  • 结合项目场景举例说明使用动机,比八股更有说服力。