NiceOffer

面试面经 · 微信事业群WXG

【微信事业群】【后端开发】【一面】Redis数据结构+MySQL索引+并发编程

腾讯微信后端开发实习面经一面

【微信事业群】【后端开发】【一面】

基本信息

项目内容
公司腾讯微信事业群(WXG)
岗位后端开发
轮次技术一面
时间2025年
面试时长约45分钟
面型体感问题密度高,从 Redis 到 MySQL 到并发一路追问
结果通过

面试题目(按提问顺序)

  1. 自我介绍
  2. 挑一个项目详细介绍,遇到最大的困难是什么?
  3. Redis 为什么快?说说它的底层数据结构
  4. Redis 的持久化方式有哪些?RDB 和 AOF 各自有什么优缺点?
  5. Redis 缓存穿透、缓存击穿、缓存雪崩分别是什么?怎么解决?
  6. Redis 如何实现分布式锁?有什么需要注意的问题?(超时释放、看门狗续期)
  7. MySQL 聚簇索引和非聚簇索引有什么区别?
  8. MySQL 索引失效的几种情况?如何避免?
  9. InnoDB 事务的四大特性?隔离级别有哪些?MVCC 是怎么实现的?
  10. volatile 关键字的作用?能保证原子性吗?
  11. synchronized 和 ReentrantLock 的区别?你在项目中怎么选的?
  12. CAS 是什么?有什么 ABA 问题?怎么解决?
  13. 线程池的核心参数有哪些?拒绝策略有哪些?
  14. 手撕代码:找出数组中第 K 大的元素(要求用快排思想)

面试感受 / 反馈

  • 微信一面对 Redis 和 MySQL 的考察很深入,不是简单背概念
  • 追问链路很长:从 Redis 快不快 → 底层数据结构 → 持久化 → 缓存问题 → 分布式锁,一步步深入
  • 并发编程部分会追到 CAS 和 ABA 问题这个级别
  • 手撕代码是中等难度,重思路而非代码量

准备建议

  • Redis:底层数据结构(SDS、ziplist、quicklist、skiplist、hashtable、intset)要能说清楚
  • MySQL:B+树索引、MVCC 实现(ReadView + Undo Log)是必考
  • 并发:CAS/ABA、AtomicStampedReference 要能讲清楚
  • 手撕:Top K 问题(快排 partition 思想)、LRU、二叉树遍历要熟练

反问示例

  • 团队主要负责微信的什么功能?
  • 日常实习的话,一般做什么类型的工作?