架构训练营第 10 期模块二作业
【作业要求】
1、对照模块 2 讲述的复杂度分析方法,分析微信朋友圈的复杂度
2、针对各个复杂度,画出你的架构设计方案
3、给出你的架构方案中关键的设计理由
4、3~5 页 PPT 即可,涵盖复杂度分析、架构设计、设计理由
问题一:
微信朋友圈包括发朋友圈、看朋友圈、点赞和评论等业务,业务逻辑比较简单,业务复杂度比较低,但是由于有大量的微信用户,质量复杂度比较高。
问题二:
问题三:
架构设计理由:
微信朋友圈服务和存储对高性能和可用性要求高,均采用集群模式,使用 nginx 进行负载均衡。
发文和阅读属于写少读多的场景,使用 redis 缓存,同时使用关系型数据库 mysql 存储。
点赞和评论内容较少,且读取频率高,使用 redis 集群存储。
点赞评论选取数据模型为 Zset,可以讲文章对应 key 文章主键 velue 题目 ,点赞数为分数。
评论