Php 收集大量访问统计数据的方法
我有一个网站,在那里用户可以发布他们的文章,我想给每一篇文章的访问和它的作者的参考完整的统计数字。这里的实现似乎很简单,只需为每次访问存储一个数据库记录,然后使用聚合函数绘制图形等等 问题是,文章在24小时和一个月内收到大约30万次浏览,统计表将获得大约900万条记录,这是一个非常大的数字,因为我的服务器不是很强大 这类任务有解决办法吗?是否有一种算法或缓存机制允许在不损失准确性的情况下存储长期统计数据 这里是我的原始统计表:Php 收集大量访问统计数据的方法,php,mysql,statistics,Php,Mysql,Statistics,我有一个网站,在那里用户可以发布他们的文章,我想给每一篇文章的访问和它的作者的参考完整的统计数字。这里的实现似乎很简单,只需为每次访问存储一个数据库记录,然后使用聚合函数绘制图形等等 问题是,文章在24小时和一个月内收到大约30万次浏览,统计表将获得大约900万条记录,这是一个非常大的数字,因为我的服务器不是很强大 这类任务有解决办法吗?是否有一种算法或缓存机制允许在不损失准确性的情况下存储长期统计数据 这里是我的原始统计表: visitid INT articleid INT ip INT d
visitid INT
articleid INT
ip INT
datetime DATETIME
除非你特别热衷于自己存储你的统计数据,否则你可能会考虑使用或它的一个现代同行,这比90年代的远程托管命中计数器要好得多。您可以在上找到Google Analytics PHP界面的API,假设是一个自制的使用情况跟踪解决方案(而不是其他回复中建议的GA),两个数据库设置可能就是您想要的:
- 一个“实时”数据库,在vist事件发生时捕获它们
- 一种“离线”数据库,其中定期收集“实时”数据库中的数据,以便[可选地]聚合和索引