架构实战营 模块 4 作业
基于模块 4 第 6 课的估算结果和 Redis sentinel 的初步方案设计,完善考试试卷存储方案,具体包括:1)完善 Redis 的数据结构设计,明确具体使用哪种 Redis 数据结构
用 String 类型的数据结构来存考卷。
数据结构设计:
Key: 班级+科目+考试 ID
Value:字符串存储考试试卷
2)设计具体的读写流程(可以文字描述也可以序列图描述,序列图要有文字辅助说明)
读流程
当学生开始考试,以班级+科目+考试 ID 作为 Key 来读数据
如果不存在,抛出异常
如果存在,返回考卷数据
写流程:
用班级+科目+考试 ID 作为 Key,事先将考卷数据直接写入 Redis sentinel.
如果事先不存在,返回成功
如果已经存在,抛出异常
3)对照模块 4 第 6 课的性能估算结果,计算 Redis sentinel 集群的服务器数量和性能
Redis 的单机 TPS 最高为 5 万,需要 3 台节点采用主从复制的部署架构来实现高可用。同时 sentiel 集群本身也需要 3 个节点来实现高可用。
评论