架构设计作业2

分析一下微信朋友圈的高性能复杂度

【作业要求】

  1. 对照模块2讲述的复杂度分析方法,分析微信朋友圈的复杂度。
  2. 针对各个复杂度,画出你的架构设计方案(无需做备选方案,只需要最终的方案即可)。
  3. 给出你的架构方案中关键的设计理由。
  4. 3~5页 PPT 即可,涵盖复杂度分析、架构设计、设计理由。

【提示】

1. 分析过程可以参考模块2第5课的实战案例,但是不需要将分析过程一一列举出来。

2. 如果某个地方被卡主了,请及时联系助教或者老师讨论。

设计考虑:

  1. 采用Nginx做负载均衡。
  2. 用sharding-JDBC做个人动态的分库分表的方式记录个人发布的动态信息,适应计算高性能的要求。
  3. 使用异步Fanout的方式将个人朋友圈的时间线进行更新,适应计算高性能的要求。
  4. 用sharding-MangoDB来更新评论。适应计算高性能的要求。由于评论不断更新,MangoDB适合将各个评论集合在一起,更新和访问的效率比关系数据库好。
  5. 采用CDN来加速图片和视频信息的更新和访问,适应存储高性能的要求。
This entry was posted in Uncategorized. Bookmark the permalink.

Leave a comment