架构训练营模块 5- 作业
设计微博系统中”微博评论“的高性能高可用计算架构。
【作业要求】
基于模块 5 第 6 课的微博实战案例,分析“微博评论”这个核心场景的业务特性,然后设计其 高性能高可用计算架构,包括但不限于如下内容:
1. 计算性能预估(不需要考虑存储性能);
写评论
日活:2.5 亿
每人每天平均发一条
假设每条微博平均被评论 2 次,
60%的评论都是发生在 7-8, 12-13 20-22 这 4 个小时内
2.5 亿 * 2 * 60% / 4*3600 = 20k / s
看评论
日活:2.5 亿
每人每天平均发一条微博,总共 2.5 亿 微博
每条微博平均会写 2 评论。每条评论平均看 5 次,
60%的看评论都是发生在 7-8, 12-13 20-22 这 4 个小时内
2.5 亿 * 2 * 5 * 60% / 4 * 3600 = 100k / s
2. 非热点事件时的高性能计算架构,需要考虑是否要拆分独立的服务;
看评论的 tps 比写评论 tps 高,需拆分读写操作
写评论:
不能用缓存,对时效行要求不高,可以用写缓冲,
算法怎么选择,哈希算法(按照微博 post id 哈希,评论和微博放在一起处理和存储
F5/LVS - Ngnix - 服务网关 - Application Server (12 台服务器)
看评论:
多级负载均衡 + 多级缓存架构。缓存热点评论
算法怎么选择,哈希算法(按照微博 post id 哈希)
F5/LVS - Ngnix - 服务网关 - Application Server (55 台服务器)
3. 热点事件时的高可用计算架构。
热点事件很难预测,做好预防
评论热点事件,利用写缓冲,限流。
看热点事情评论的时候,多副本缓存
评论