面试真题

后端 · 困难 · 腾讯

开放性问题,设计微信的海量数据存储系统

困难 后端 🎤 腾讯
参考答案
结论:微信海量数据存储需分层设计,核心包括消息、关系链、朋友圈、用户资料等,采用分布式存储与缓存结合。
要点:
- 消息存储:按用户ID哈希分库分表,采用KV存储(如HBase)或自研,冷热分离;
- 关系链:图数据库或分布式KV;
- 朋友圈:写扩散或读扩散结合,使用Redis缓存热点;
- 海量小文件:对象存储;
- 高可用:多副本、一致性协议(Paxos/Raft);
- 监控与扩容:自动化运维。
原理:通过分片降低单点压力,异步队列解耦,最终一致性满足体验。
题目整理自公开面经,答案由校招宝自研生成,仅供参考