面试面经 · 微信事业群WXG
【微信事业群】【后端开发】【二面】红包雨系统设计+CAP权衡+分布式架构
【微信事业群】【后端开发】【二面】
基本信息
| 项目 | 内容 |
|---|---|
| 公司 | 腾讯微信事业群(WXG) |
| 岗位 | 后端开发 |
| 轮次 | 技术二面 |
| 时间 | 2025年 |
| 面试时长 | 约60分钟 |
| 面型体感 | 面试官气场强,全程架构讨论,不问八股只问设计 |
| 结果 | 通过 |
面试题目(按提问顺序)
- 自我介绍
- 一面手撕的代码在并发环境下安全吗?怎么加锁?有没有更好的方案?
- 如果微信要做一个"红包雨"活动,全球用户同时抢,QPS 预计百万级,你怎么设计?
- 你的架构中,接入层怎么设计?限流策略是什么?
- 库存扣减怎么保证不超发?为什么用 Lua 脚本?Lua 脚本在 Redis Cluster 下有什么问题?
- 如果 Redis 集群某个节点挂了,数据丢了怎么办?红包发多了谁负责?
- 你在设计中提到了 CAP 理论,在这个场景下你怎么取舍?
- 异步写入 MQ 之后消费者挂了怎么办?消息丢了怎么补偿?
- 你的方案中怎么做到对用户透明?用户应该看到什么?
- 你觉得这个方案上线后最大的风险点在哪?
- 你最近在看什么技术书/开源项目?
- 对微信的产品有什么看法?有没有觉得哪个功能可以改进?
面试感受 / 反馈
- 二面完全是系统设计面,不问八股文
- 面试官会不断追问你的方案漏洞,逼你完善
- "Redis 节点挂了数据丢了"这类极端 case 是必问的
- 需要展示 CAP 权衡思维和业务补偿意识
- 面试官也关心你对产品本身的思考
准备建议
- 高并发系统设计要能画出分层架构:接入层 → 服务层 → 缓存层 → 数据层
- 库存扣减方案:Redis Lua 原子扣减 + MQ 异步落库 + 对账补偿
- 降级方案要提前想好:熔断、限流、返回兜底文案
- 产品思考:准备 1-2 个对微信功能的改进建议,体现产品意识
反问示例
- 团队目前最大的技术挑战是什么?
- 新人进来后做什么模块?
- 团队的技术氛围如何?