千万级学生管理系统考试试卷存储方案
一 业务分析
请求试卷 :5W/s
提交试卷: 1700/s
二 试卷存储 redis 数据结构设计
1 试卷整体信息设计
采用 string 结构
key: 学校 ID+课程 ID+试卷 ID
value: 试卷整体信息
2 试卷题目内容
采用 hash 结构
key: 学校 ID+课程 ID+试卷 ID
field:题目 id
value: 每个题目的内容
3 学生考试整体情况
采用 string 结构
key: 学校 ID+课程 ID+试卷 ID+学号 ID
value:记录考试信息(比如考试成绩,开始答题时间,交卷时间)
4 学生考试题目作答明细
采用 hash 结构
key: 学校 ID+课程 ID+试卷 ID+学号 ID
field:题目 id
value: 每个题目作答情况(比如答题内容,分数)
三 读写流程
四 redis sentinel 集群设计
学生考试,开卷的时间请求 qps 5w/s;提交试卷的 qps:1700/s
redis 单机服务器理想情况下是 5w-10w qps,根据三倍性能要求,设置一主三从,并且提供哨兵三个节点
评论