3

我可以知道在数据库中存储页面视图的最佳做法是什么?

每次加载页面时更新综合浏览量值是否昂贵?

并且在更新网页浏览时是否存在任何可能的错误/威胁,同时其他人正在修改同一行的数据?

例如

表 - 项目 ID 名称 描述 PageView

我知道这可能不是一个很大的问题,它可以应用于其他一些经常更新的数据,想知道什么是最好的方法。我想到的可能场景是,如果有很多页面同时运行。会不会有性能问题?

请原谅我的英语,并提前非常感谢。

4

1 回答 1

8

最好的方法是为每个视图在表中写入一个新行,而不是保持滚动计数,这可能会导致大型系统上的锁定问题。INSERT DELAYED为了提高性能,您可以使用语法添加行。这将允许数据库句柄立即返回,并且您的脚本不会等待插入完成。此处的文档:-

http://dev.mysql.com/doc/refman/5.5/en/insert-delayed.html

还可能值得查看专门针对此类日志记录的存档存储引擎。你只能INSERTSELECT数据,但性能是针对快速写入。

http://dev.mysql.com/doc/refman/5.1/en/archive-storage-engine.html

要查看综合浏览量信息,您只需查询任何给定页面的行数。这种方法的一个主要优点是,通过记录每个页面视图的时间戳,您可以按一天中的时间、一周中的几天等分析数据,并查看您的流量是什么形状。

于 2013-01-31T09:45:30.893 回答