用PHP编写的顶级内容系统

时间:2012-06-20 22:03:50

标签: php design-patterns

我想写一篇顶级文章系统。

我想根据观看次数过滤一些内容(文章/等等)。

如果每次用户查看该链接时我都会在views=views+1的数据库中插入,我认为这很慢,这是一种不好的做法。

另一个执行此操作的网站示例是YouTube。它仅以特定间隔更新此表,因此视图不会实时更新。这是一个很好的做法吗?

2 个答案:

答案 0 :(得分:0)

您可以创建一个日志(简单文本文件/ xml / Json .........)来存储视图计数并执行一项工作来解析文件并将结果插入到数据库中。

此作业可以按时间间隔运行,也可以检查系统是否有空闲处理器。

在我看来,使用RAM来存储敏感数据,因为这个计数(系统的一个重要部分)似乎有点不安全。

答案 1 :(得分:0)

创建第二个视图表;你也可以使用这个第二个表来过滤“重复”视图(由cookie支持 - 删除重复的视图将不是一个完美的操作)。

至于“慢”,我在很多用户的网站上使用过这种方法。存储和聚合数据是数据库的功能,因此请使用它们的功能。

然后,您可以使用此第二个表来总计视图,或定期汇总数据并将运行总计存储在主表中,清除第二个表以保持空间不足。我通常会保留所有数据,但要提高速度。