
1 darcy 2010-10-05 13:01:34 +08:00 我的个人愚见 #1 是否有必要有user_name在于user_name更改的频率与同步它到topic字段的代价,以及topic被查询的次数的代价想权衡 #2 建议有,但是一定时间做一次数据订正 #3 取决于重复查询的成本大,还是修改topic字段的成本大 |
2 Livid MOD PRO Less join more performance. |
3 iiduce/strong> OP @darcy 谢谢,给了我一些启发。 #1 之前我确实没考虑到user_name同步的问题。不过用户名字段可以考虑不允许更改,或一定时间内只允许更改一次(如豆瓣)。 #2 有启发。按照你的说法,可以这样做。每次回复时,不更新topic的reply字段。每隔一定时间使用count()方法将topic表数据更新至topic方法。(这个可以和缓存一起做) #3 我就是不确定联表查询的成本大,还是每次修改topic表字段的成本大。 另外,是不是可以考虑当用户发表主题或回复时,能改忍耐稍久的时间。而在显示读取时,用户的耐性更差些。 |
5 Livid MOD PRO 用 iPhone 没法回长贴子。 尽可能不要做跨表查询。如果一定要做,那么保证连接的 fields 及返回的所有 fields 甚至表里的所有 fields 都是整数。 非整数类型,如果尺寸很大,那么放入 kv db。 |
6 Livid MOD PRO 这些改进可以在上线 6 个月之后再做,先保证上线吧。 |