【发布时间】:2012-03-10 09:40:29
【问题描述】:
我正在实施一个网站,我的用户将在完成某些目标或任务后获得徽章。
徽章也会有等级/颜色。例如,用户从 0 级青铜徽章开始,随着他们的进步,他们将获得 1 级青铜徽章,再过几个级别后,他们将获得 0 级银徽章,依此类推。
我正在构建数据库,但不确定如何将徽章连接到用户。
我的想法是为用户创建 1 个表,为徽章创建 1 个表,以及第三个将 UserID 连接到 BadgeID:
我关心的是优化。随着更多用户加入网站并获得徽章,访问表和搜索记录不会变慢吗?
我阅读了 here 中关于使用 Java 中的单例在服务器上定期运行脚本并根据规则检查用户状态以升级满足上限目标的徽章。 这种方法真的可扩展吗?还是我应该关注这个 Post ?
TIA
【问题讨论】:
-
“随着更多用户加入网站并获得徽章,访问表和搜索记录不会变慢吗? - 如果您有适当的索引,则不会。
-
@MitchWheat 你能进一步解释一下你的观点吗?
标签: database optimization scalability achievements badge