架构实战营 模块四:课后作业
设计千万级学生管理系统的考试试卷存储方案
【作业要求】基于模块 4 第 6 课的估算结果和 Redis sentinel 的初步方案设计,完善考试试卷存储方案,具体包括:
1)完善 Redis 的数据结构设计,明确具体使用哪种 Redis 数据结构
2)设计具体的读写流程(可以文字描述也可以序列图描述,序列图要有文字辅助说明)
3)对照模块 4 第 6 课的性能估算结果,计算 Redis sentinel 集群的服务器数量和性能
【提示】性能可以有一定冗余如果对 Redis sentinel 不熟悉,请参考官方文档: https://redis.io/topics/sentinel
1)使用 Hashtable 數據結構,方便分類(例如版本更新或章節更新等),而不用新增 key。
2) 老師上傳試卷至 master,sentinel 會同步資料至 slave,架構須設定考試前 10 分鐘不能修改,以利於學生一分鐘的讀取(5 萬 TPS)。
3) 基本上單機即可負荷(Redis 單機 5 萬~10 萬 TPS),不過在高可用架構下,設置 3 台 Redis Server(兩台不易投票選出下一台 master)。
版权声明: 本文为 InfoQ 作者【Ahu】的原创文章。
原文链接:【http://xie.infoq.cn/article/adee8ef401c93bd026eb33f79】。文章转载请联系作者。
评论