
获得徽章 14
- 有时限的通知【比如 系统维护通知】如何设计数据库最优雅?
需求描述
有一个项目,面向学校德育评价,打算留一个发布通知的模块,现在拿不准如何设计数据库
个人方案
我个人有预想三种方案去解决:
1.在mysql中建一个系统通知表
2.直接存redis中
3.无时限通知存到mysql中,有时限的通知存到redis中,所有通知查询都通过redis查询,redis需要开启数据持久化【防止服务器宕机】
第一种方案的优点是可以实现数据的持久化,但是对于一些时效性较强的通知【例如系统维护通知等】需要进行额外处理【需要考虑通知的销毁】
第二种方案的优点是可以比较轻松的处理时效性问题,但是需要考虑数据的持久化【因为需要考虑到服务器重启问题】
第三种方案不知道合不合理,数据库会不会出现数据的冗余,会不会增加后续的维护成本
想看看大佬们的意见建议展开赞过评论1 - 需求描述
有一个项目,面向学校德育评价,其数据库中有如下表结构:
用户登录表:含一个“个人信息”字段,该字段依赖于下面的用户信息表
用户信息表:根据需求,分为学生表、教师表、运维表
ps:考虑到后期程序的灵活性及学校的发展性,可能后期运维人员可能会陆续增加,所以单独设置了运维表
问题描述
首先因为上面说到的缘故,为了兼顾后期项目的灵活性问题【后面运维人员可能不止一个】,不考虑常用的预分配运维账号的方式,即:运维人员需要自己注册账号
现在的问题是根据上述需求,项目要在用户注册阶段区分出这个用户是学生、教师还是运维;尤其是要避免类似于学生错注册成运维这种情况
请问大佬们有什么好的建议吗展开1点赞