写点什么

模块四作业:千万级学生管理系统试卷存储方案

用户头像
Felix
关注
发布于: 1 小时前

存储性能需求

  1. 试卷请求 QPS:5 万/s

  2. 提交试卷:1700/s

存储方案

Redis Sentinel

数据结构设计

1)数据结构

Key:学校 + 学期 + 科目

Value:试题用 SortedSet 来存储

2)读写分析

添加或修改试题:使用题号作为 score 排序。先根据题号查询试题是否存在,不存在的话直接添加试题,存在的话,先删除当前题号的试题,然后添加新试题。

读试题:学生根据所在学校,所属学期,和考试科目可用一次查询出按题号排序的所有试题,也可以按题号范围,查询出按题号排序的部分试题。

Redis Sentinel 服务器数量和性能分析

Redis 的读取性能瓶颈主要在带宽。假定每次试卷请求的数据量为 1000KB,则每秒需要的带宽为 5 万 M。如果每天服务器的下行带宽为 100M,则需要 500 台服务器。相当于每台服务器每秒处理 100 个试卷请求,每秒传输 100M 数据。

用户头像

Felix

关注

还未添加个人签名 2019.02.14 加入

还未添加个人简介

评论

发布
暂无评论
模块四作业:千万级学生管理系统试卷存储方案