写点什么

架构实战营 模块四 作业

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

数据结构设计 redis

一、存储试卷简要信息

       使用 hashtable

      key:学校 id + 课程 id + 年份

        hashtable:试卷 id(使用算号器生成),试卷名称

二、试卷详情

       使用 hashtable

       key:试卷 id

       hashtable:  20 判断题、20 选择题、4 道大题

三、设置考试使用的试卷 id

 使用 string

       key:学校 id + 课程 id

       string:  试卷 id

读写流程

写入:

添加试卷,老师存入试卷的时候,首先使用算号器生成试卷 id,然后把试卷 id,试卷名称存入到试卷简要信中,便于筛选,然后试卷 id 作为 key,把试卷的题目信息存储到试卷详情中

因为会有多份试卷的情况,老师可以设置考试使用的试卷 id

读取:

考试时,学生可以根据老师设置好的试卷 id,获取到试卷的题目信息

分析

  • 写入性能,老师的人数有限,录入试卷的时间不是集中的,所以可以忽略不计

  • 读取性能,请求试卷:1000 万 * 20(课)/ 20(周末不考试) / 4(每天 4 堂考试)/ 1 分钟 = 250 万请求/分钟 ≈ 5 万/每秒。redis 单机: 5 万/每秒。可以使用一主二从三哨兵进行部署,三台 Redis 服务器组成服务集群,再有三台服务器部署哨兵组成哨兵集群

用户头像

脉醉

关注

还未添加个人签名 2018.04.25 加入

还未添加个人简介

评论

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