写点什么

架构实战营 - 模块四作业

用户头像
思梦乐
关注
发布于: 2021 年 08 月 03 日

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

一、Redis sentinel 存储方案设计-考试试卷

【数据结构设计】

key: 学校 ID+课程 ID+试卷 ID

Value: 试卷内容(JSON 序列化)

【读写分析】

1、因每个学校考试试卷为 20(课)*2(次)*3(年)*100(学校数量)*100(套试卷),总共也就 12 万套试卷左右。一台 redis 就能存储。但考虑到读取试卷的时候 QPS 为 5 万/s,需要 1 台 Master,2 台 Slave(redis)。

2、保存 redis 直接写到 master 节点。然后分别复制数据到 2 台从 Slave 节点。


二、Redis sentinel 存储方案设计-试卷请求

【数据结构设计】

key: 学校 ID+课程 ID+试卷 ID

Value: 试卷内容(JSON 序列化)

【读写分析】

1、读取的时候根据学校 ID+课程 ID+试卷 ID 随机从 3 台 redis 读取试卷请求。

2、考虑到主节点有可能挂掉,需要 sentinel 来保证 Master 节点挂掉后,实现主从切换。


用户头像

思梦乐

关注

还未添加个人签名 2017.12.02 加入

还未添加个人简介

评论

发布
暂无评论
架构实战营 - 模块四作业