架构实战营模块四
千万级学生管理系统的考试试卷存储方案
1.存储试卷存储系统选择使用 redis 来存储
2.数据类型使用 string key:学校 ID+试卷 ID value:{"题目 1","题目 2"}
3.具体读写流程
3.1 老师发布考试题到 redis
3.2 学生根据学校和试卷 ID 查询考试题
3.3 到 HBase 中查询一下是否有之前答题的结果(考虑的是学生之前写了一部分题的答案,退出登录再次进入的时候,之前的结果要存在)
3.4 学生做题结果实时提交到 HBase 中
4.redis sentinel 数量和性能
请求试卷:1000 万 * 20(课)/ 20(周末不考试) / 4(每天 4 堂考试)/ 1 分钟 = 250 万请求/分钟 ≈ 5 万/每秒
redis sentinel 使用 3 台 ,3 台 redis 节点
疑问
1.按照 5 万的 QPS 单台 redis 是可以支持的,我们搭建集群主要是为了 HA
2.考虑到集群的选举机制我们的部署基数台,这样最少也是三台
3.目前 5 万 QPS 的场景我们能不能把 redis 部署到 2 台服务器上,相当于给 2 台服务器部署了 3 个 redis 服务
4.按照作业的需求我们是不是,不需要考虑 redis 的写入
5.老师批改作业的设计 我的思路是,先从 redis 中读取试卷,然后从 HBase 中读取学生答题结果,不知道合理不
评论