美团后端开发实习一面面经总计七十分钟,面试官人挺好的,全程很有耐心。就是我自己基础太薄弱,很多八股都回答得很模糊,一遇到追问就露馅了。一、 项目拷打问了高并发下怎么做防重设计?系统的 QPS 瓶颈在哪里?如果落库失败怎么处理数据一致性?二、 计算机网络 & 操作系统1. HTTP: HTTP 1.1 版本有什么比较重要的新特性?2. TCP: TCP 链接复用问题:如果电脑开了一个浏览器,先后打开两个相同的网页标签,它们用的 TCP 链接是同一个吗 如果用不同的浏览器打开呢?3.Linux: 了解 Linux 的线程模型吗?了解多路复用函数(如 select, poll, epoll)吗?4.OS理论: 操作系统中,“并发(Concurrency)”和“并行(Parallelism)”有什么区别?它们在系统处理器视角下分 别是什么意思?三、 Java 基础 & 并发编程 (JUC)1. 面向对象: 封装、继承、多态。其中 protected 修饰符的访问规则是怎样的?2. Object类: Object 类提供了哪些基本的函数?3. 线程通信: wait() 函数和 Thread.sleep() 有什么区别?4. 线程池原理: 线程池的核心参数有哪些?5. 线程池场景: 核心线程数为2,最大线程数为4,队列容量为10。当任务不断进来时,线程池的分配和创建逻辑是怎样的?6. 线程池参数设置: 针对 CPU 密集型任务和 IO 密集型任务,线程池大小应该怎么设置?7. 追问: 为什么 IO 密集型通常设为 2N?如果两个 IO 任务耗时差异很大(比如一个是500ms,一个是50ms),设置原则上有什么差异?8. 线程池拒绝策略: 了解哪些拒绝策略?四、 JVM & 框架1. JVM: JVM 和 GC 了解过吗?平时这些底层知识是怎么学习的?2. Spring: Spring Boot 和 Spring 框架有什么区别?3. IOC: 依赖注入时,@Autowired 和 @Resource 有什么区别?它们分别是谁约定/提供的?4. Web组件: 拦截器(Interceptor)和过滤器(Filter)的执行顺序是怎样的?具体有什么差异?5. AOP: AOP 动态代理在不同的场景下有哪些实现机制?五、 数据库 & 中间件 (MySQL, MQ, Redis)1. MySQL底层: InnoDB 引擎中,主键使用自增 BigInt 和使用 UUID,在性能上有什么差异?追问: 如果是通过主键精确查询(id = xxx),自增 ID 和 UUID 有区别吗?2. MQ: 消息队列有多个分区(Partition),但某些场景下必须要保证“顺序消费”,如何实现?(例如 A 消息和 B 消息分别进了不同分区,如何保证顺序)3. Redis 容量评估: 如果现在上一个新需求,数据结构确定了,数据量级也确定了,怎么评估存储这些数据所需的 Redis 内存空间是否足够?4. 底层原理: Redis 是用 C 语言写的,你知道怎么计算一个 C 语言结构体(Struct)占用的内存空间大小吗?六、 算法题很简单的一个反转链表(LeetCode 206)。要求: 必须用 递归 和 迭代 两种方法分别写出来。