当前位置:  开发笔记 > 后端 > 正文

在MySQL中实现计数器字段的最佳方法是什么

如何解决《在MySQL中实现计数器字段的最佳方法是什么》经验,为你挑选了0个好方法。

我想开始计算网页被查看的次数,因此需要某种简单的计数器.这样做的最佳可扩展方法是什么?

假设我有一个表Frobs,其中每行对应一个页面 - 一些明显的选项是:

    在Frobs表中有一个unsigned int NumViews字段,它使用每个视图进行更新UPDATE Frobs SET NumViews = NumViews + 1.简单但不太擅长缩放,因为我理解它.

    有一个单独的表FrobViews为每个视图插入一个新行.要显示视图数,您需要做一个简单的操作SELECT COUNT(*) AS NumViews FROM FrobViews WHERE FrobId = '%d' GROUP BY FrobId.这不涉及任何更新,因此可以避免MyISAM表中的表锁定 - 但是,如果要显示每个页面上的视图数量,读取性能将受到影响.

你怎么做呢?

这里有一些很好的建议:http: //www.mysqlperformanceblog.com/2007/07/01/implementing-efficient-counters-with-mysql/ 但我想听听SO社区的观点.

我目前正在使用InnoDb,但我对InnoDb和MyISAM的答案感兴趣.

推荐阅读
跟我搞对象吧
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有