相关疑难解决方法(0)

成就/徽章系统

我一直在浏览这个网站以获得答案,但我仍然不确定如何在其数据库结构和实现中规划类似的系统.

在PHP和MySQL中,很明显会立即获得一些成就(当采取专门行动时,在所有情况下:填写所有个人资料字段),虽然我知道在一定时间后更新并分配徽章.如此多的用户和徽章不会产生性能问题(就规模而言:用户和徽章数量都很大).

所以我假设的数据库结构就像这样简单:

Badges     |    Badges_User      |    User
----------------------------------------------
bd_id      |    bd_id            |  user_id
bd_name    |    user_id          |  etc
bd_desc    |    assigned(bool)   |  
           |    assigned_at      |
Run Code Online (Sandbox Code Playgroud)

但正如有些人所说,最好采用增量式方法,因此拥有1,000,000个论坛帖子的用户不会放慢任何功能.

那么它是徽章的另一个表可能是增量的还是上面badges_user表中的'progress'字段?

感谢阅读,请关注所需系统的可扩展性(如数以千计的用户和20到40个徽章).

编辑:有些人认为我已经指定了一些混淆日期/时间,颁发徽章的标准最好放在准备好的查询/每个徽章的功能中不会吗?(更好的灵活性)

php mysql architecture scalability

28
推荐指数
3
解决办法
7215
查看次数

标签 统计

architecture ×1

mysql ×1

php ×1

scalability ×1