繁体   English   中英

用户活动墙的最佳方法

[英]Best approach to user activity wall

我有不同的帖子类型,例如状态更新,项目,捐赠等。每种类型的帖子在数据库中都有其一个或多个表格。 用户可以创建所有帖子类型。 用户有一个像Facebook这样的墙,他可以按时间顺序查看他创建的不同帖子类型(最后创建的任何帖子类型都应在墙上)。

什么是最合适的方法?

  1. 从具有不同查询的数据库中获取数据存储在数组中,然后操作数组?
  2. 要编写一个复杂的单个查询,该查询可以按时间顺序从不同的表中获取数据?
  3. 要为用户活动创建单独的表并在用户执行任何活动时存储数据?
  4. 您的方法与上述方法不同?
  1. 设置简单,效果不佳(最坏的情况是非常糟糕的)。

  2. 是最简单的。 您说的很复杂,但是您可以使用UNION + ORDER BY构造相当容易地做到这一点。 性能会很好。

  3. 我会认为效果最好,但是会有些重复,情况可能会变得有些复杂。 关系数据库不是很擅长多态。

重要的是要意识到在这些解决方案之间进行切换相对容易。 如果您具有面向服务的体系结构(或者总体而言只是好的设计)。 因此,我不会太担心您选择哪种方法。 如果将来您选择的方法似乎效果不佳,则可以改用其他方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM