面试面经 · 蚂蚁集团
【蚂蚁集团】【Java开发】【二面】万亿级数据分库分表设计+JVM调优
【蚂蚁集团】【Java开发】【二面】
基本信息
| 项目 | 内容 |
|---|---|
| 公司 | 蚂蚁集团 |
| 岗位 | Java开发工程师 |
| 轮次 | 二面(技术面/架构面) |
| 时间 | 2025年6月 |
| 面型体感 | 视频面试,约50分钟,全程深挖技术细节 |
| 结果 | 通过 |
面试题目(按提问顺序)
- 自我介绍 + 项目介绍,重点讲架构设计
- 项目的整体技术架构是怎样的?
- 分库分表方案是怎么设计的?分片键如何选择?
- 跨分片查询怎么处理的?比如跨表统计
- 分库分表后如何做数据迁移?
- 万亿级流水表的分库分表设计,从分片键到查询路由怎么做?
- 缓存与 DB 的对账频率是多少?大促时的流量削峰方案?
- 队列异步处理的具体方案?如何保证消息不丢失?
- 分布式事务在你们项目中是怎么处理的?
- JVM 调优做过吗?G1 在大内存场景下的参数调优逻辑?
- 你们系统的 QPS 是多少?瓶颈在哪里?
- 如何做全链路压测?
- 线上出现过什么严重的故障?怎么排查和解决的?
- 对金融级系统的一致性有什么理解?
- 手撕代码:设计一个布隆过滤器,分析误判率
面试感受 / 反馈
二面直接上万亿级流水表分库分表设计,从分片键选择到跨表统计优化,每步都被问细节。最后聊到 JVM 调优,要求解释 G1 在大内存场景的参数调优逻辑。整体非常看重技术落地细节,光背理论不行。
准备建议
- 分库分表要能讲出完整的方案:分片键选择、路由策略、扩容方案
- 万亿级数据的设计要有实际思考,不是背概念
- JVM 调优不能只会说参数,要能结合实际场景
- 金融系统的数据一致性和幂等性是重点
- 布隆过滤器的原理和误判率分析要掌握
反问示例
- 蚂蚁的金融级架构和互联网架构最大的区别是什么?
- 团队在技术选型上的决策流程是怎样的?