NiceOffer

面试面经 · 蚂蚁集团

【蚂蚁集团】【Java开发】【二面】万亿级数据分库分表设计+JVM调优

蚂蚁集团Java开发社招面经二面

【蚂蚁集团】【Java开发】【二面】

基本信息

项目内容
公司蚂蚁集团
岗位Java开发工程师
轮次二面(技术面/架构面)
时间2025年6月
面型体感视频面试,约50分钟,全程深挖技术细节
结果通过

面试题目(按提问顺序)

  1. 自我介绍 + 项目介绍,重点讲架构设计
  2. 项目的整体技术架构是怎样的?
  3. 分库分表方案是怎么设计的?分片键如何选择?
  4. 跨分片查询怎么处理的?比如跨表统计
  5. 分库分表后如何做数据迁移?
  6. 万亿级流水表的分库分表设计,从分片键到查询路由怎么做?
  7. 缓存与 DB 的对账频率是多少?大促时的流量削峰方案?
  8. 队列异步处理的具体方案?如何保证消息不丢失?
  9. 分布式事务在你们项目中是怎么处理的?
  10. JVM 调优做过吗?G1 在大内存场景下的参数调优逻辑?
  11. 你们系统的 QPS 是多少?瓶颈在哪里?
  12. 如何做全链路压测?
  13. 线上出现过什么严重的故障?怎么排查和解决的?
  14. 对金融级系统的一致性有什么理解?
  15. 手撕代码:设计一个布隆过滤器,分析误判率

面试感受 / 反馈

二面直接上万亿级流水表分库分表设计,从分片键选择到跨表统计优化,每步都被问细节。最后聊到 JVM 调优,要求解释 G1 在大内存场景的参数调优逻辑。整体非常看重技术落地细节,光背理论不行。

准备建议

  • 分库分表要能讲出完整的方案:分片键选择、路由策略、扩容方案
  • 万亿级数据的设计要有实际思考,不是背概念
  • JVM 调优不能只会说参数,要能结合实际场景
  • 金融系统的数据一致性和幂等性是重点
  • 布隆过滤器的原理和误判率分析要掌握

反问示例

  • 蚂蚁的金融级架构和互联网架构最大的区别是什么?
  • 团队在技术选型上的决策流程是怎样的?