模块 4 作业
基于模块 4 第 6 课的估算结果和 Redis sentinel 的初步方案设计,完善考试试卷存储方案,具体包括:1)完善 Redis 的数据结构设计,明确具体使用哪种 Redis 数据结构
2)设计具体的读写流程(可以文字描述也可以序列图描述,序列图要有文字辅助说明)
3)对照模块 4 第 6 课的性能估算结果,计算 Redis sentinel 集群的服务器数量和性能
Redis 只需要存当日、小时要进行的考试科目的试卷存储,科目数量有限,总计存储量很低。
请求量:
请求试卷:峰值 5w/s
提交答案:峰值 1700/s
数据结构设计:
试卷存储方式:redis string,key:学校 Id+课程名称+考试日期,value:试卷内容,比如 JSON 形式。value 可能比较大,比如有些考试的题目字数可能比较多。
redis 读写流程:读:服务端读 redis key,写:提交试卷后写入 redis
sentinel 集群服务器数量和性能:读请求 5w QPS 单台 redis 完全能支撑。sentinel 提供高可用保证,最少要 3 个 redis 实例。master down 由 sentinel 自动 fail over 选择新的 master 提供服务。提交答案 QPS 可由单台 Redis 支撑。
总之,极端情况下总量 5w 读+ 1700 写使用 1 台 Redis 即可满足要求,配合 sentinel 需要 3 个 Redis 实例。
评论