写点什么

架构实战营|模块 2

作者:KDA
  • 2022 年 5 月 29 日
  • 本文字数:443 字

    阅读完需:约 1 分钟

架构实战营|模块2

一、微信朋友圈复杂度分析

业务复杂度:朋友圈的业务复杂度比较低,只有发布、查看、评论和点赞等内容。

质量复杂度:在 2021 年微信公开课上,创始人张小龙公布了朋友圈的用户数据,每天有 7.8 亿用户进入朋友圈,1.2 亿用户发表朋友圈,有 2 亿以上用户设置朋友圈仅三天可见。每 10 个好友,每天只剩 1 个人在朋友圈出现,6 亿人只看不发。

剔除休息时间,按 1 天 16 小时计算,大概是每秒发布 2000 条朋友圈消息,峰值数据预计为每秒 10000 条。查看数为发表的 6 倍,即 QPS 约为 60000,预估 50%的查看进行点赞 10%进行评论,点赞的 TPS 为 30000,评论的 TPS 为 6000。

二、微信朋友圈高性能架构方案

朋友圈的并发写入量非常大,使用消息队列可以将朋友圈的写入操作变为异步操作,提高响应性。朋友圈是基于朋友关系而建立的,其本身的存储应当基于关系数据库模型,但是针对每个用户的朋友圈消息流,可以预先对其进行异步计算,然后存储到 Redis 缓存中,同时用户本地客户端本地缓存。点赞和评论的写入量高于朋友圈发布量,且要求及时看到发布效果,因此选择使用 Redis 存储点赞和评论数据。



用户头像

KDA

关注

还未添加个人签名 2019.05.08 加入

还未添加个人简介

评论

发布
暂无评论
架构实战营|模块2_#架构实战营_KDA_InfoQ写作社区