写点什么

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

作者:高山觅流水
  • 2022 年 5 月 01 日
  • 本文字数:320 字

    阅读完需:约 1 分钟

前言

【考试存储性能需求】

  1. 在校学生考试结果存储:2.4T

  2. 离校学生考试结果存储:每年增长 0.6T

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

  4. 提交试卷 TPS:1700/s


经过分析,试卷的存储和访问用 Redis Sentinel 模式进行存储,考试结果用 HBase 进行存储。


试卷存储设计

【数据结构设计】

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

value: list 结构(list 中每一项就是一道题目)


【读写分析】

  1. 设计完试卷内容后,按照 key 将试卷内容以 list 结构存储起来

  2. 学生考试时按照 key 读取 list


Redis sentinel 集群的服务器数量和性能

Redis 理论上可以达到 10 万/s 左右的 QPS,实际上试卷的内容有的多,有的少,对读取性能可能会有点影响,假设可以达到 1 万/s 左右的 QPS,那么按照需求中的 5 万/s 的 QPS 要求,只要 5 台服务器可以满足读取性能要求。

最终采取 1 主+4 从的架构。

发布于: 刚刚阅读数: 3
用户头像

还未添加个人签名 2020.06.07 加入

还未添加个人简介

评论

发布
暂无评论
千万级学生管理系统的考试试卷存储方案_「架构实战营」_高山觅流水_InfoQ写作社区