写点什么

千万级学生管理系统的考试试卷存储方案

作者:AUV
  • 2022 年 1 月 09 日
  • 本文字数:376 字

    阅读完需:约 1 分钟

1.数据结构设计

登录:3000/s

注册:3/s

试卷请求:5 万/s

试卷提交:1700/s


2.数据结构设计

2.1 个人信息、登录状态:

·string 类型

key: 学号

value: {"登录状态": x, "姓名": "华仔", ...}


2.2 试卷信息:

·string 类型

key: 试卷 id

value: 试卷内容


2.3 答题结果:

·hash 类型

key: 试卷 id: 学号 id

value: 题号, 答题内容


2.4 考试成绩:

·hash 类型

key: 试卷 id

value: 学号 id, 成绩


3.读写流程

3.1 出题:老师出题后,将试题写入数据库

3.2 缓存试卷:考试前预加载,从数据库读取试题内容,写入缓存

3.3 读取试卷:从缓存中读取试卷

3.4 提交试卷:将答题内容写入数据库

3.5 批阅试卷:批阅试卷,将成绩写入缓存

3.6 查询成绩:从缓存中读取成绩


4.性能估算

考前 1 分钟试卷请求预估为 5 万/s,预估最高峰值为 3 倍即 15 万/s。单机 redis 的 QPS 估算在 5-10 万,使用 3 节点,高可用采用 Redis sentinel 最少 3 节点,可支撑 QPS 为 5*3=15 万/s。

用户头像

AUV

关注

还未添加个人签名 2021.10.24 加入

还未添加个人简介

评论

发布
暂无评论
千万级学生管理系统的考试试卷存储方案