写点什么

架构实战营 - 模块四作业

用户头像
Julian Chu
关注
发布于: 2 小时前

数据结构设计

REDIS

Key:<年分>-<学校 ID>-<学科 ID>-<第几次考试(1 or 2)>

数据结构: Hashtable

读写流程

可以用单机储存所有试卷的情况

  • 老师完成试卷, 上传至系统

  • 系统将试卷存放到 MySQL 后, 上传到 Redis

  • Redis 主从同步资料

  • 考试开始, 学生请求试卷

可以用单机储存当天试卷的情况

  • 老师完成试卷 上传至系统

  • 系统将试卷存放到 MySQL

  • 考试开始前一晚上传到 Redis,设置资料过期

  • Redis 同步资料

  • 考试开始, 学生请求试卷

无法用单机储存的情况

改用 Redis cluster

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

试卷请求 QPS:5 万/s

单机 redis qps : 5-10 万/s

採用一主一从配置即可满足性能要求,由于採用 Redis sentinel,最少需要三台 sentinel,最终採用一主二从


假定峰值 5 万/s*5 = 25 万/s 採用一主三从配置(四台 sentinel) 即可满足要求

用户头像

Julian Chu

关注

还未添加个人签名 2016.08.16 加入

还未添加个人简介

评论

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