欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

mysql设计,统计脚本执行的间隔时间。解决方法

程序员文章站 2024-01-13 17:00:28
...
mysql设计,统计脚本执行的间隔时间。
本帖最后由 mumubangditu 于 2014-03-29 19:56:24 编辑 我有一个RSS程序,想统计一下:是其他网站的服务器订阅了我的RSS,还是普通客户通过浏览器打开执行。
现在的思路是:统计每个IP地址的访问频率用以区分。如果是其他网站的服务器订阅了我的RSS,那么一定是用自动程序定时执行,每次执行间隔时间是一个定数,比如每60分钟,每90分钟访问一次。

$ip=$_SERVER['REMOTE_ADDR'];

这样的情况,怎样设计mysql数据库呢? 本次访问时间-上次访问时间;上次访问时间-前次访问时间;再前次访问时间-前次访问时间(应该还须考虑一个每次脚本打开完成时间的误差可能正负几秒)... 这样的情况统计5次,大概可以确定该IP是自动程序,下次无需再统计。
------解决方案--------------------
本帖最后由 xuzuning 于 2014-03-29 20:07:08 编辑 两个字段:ip, time(unix时间戳)
判定条件:对于同一ip (max(time) - min(time)) / count(*) = avg(time) - min(time)
算法依据:等差数列的性质
------解决方案--------------------
其实你还可以判断User-Agent信息。
------解决方案--------------------
确定是server的,应该放在另一个表(例serverlist)中记录。
首先,版主讲的是每一次有访问且未确定是否服务器,都将ip与访问时间写入一个表(例accesslog)。每次写入后,判断是否服务器访问。(通常要几次才可以确定)
如果是,在serverlist插入一条记录,并把accesslog对应ip的记录删除。
当这个服务器再访问时,先判断serverlist有没有这个ip,如果有,则不写入accesslog。
------解决方案--------------------
登记访问信息,当然是流水账
只需 insert 即可,分析计算一般也只需一条 update
弄的好的话,还可以用 view

如果你不把登记当做流水账则需先 select 定位,然后 update 修改
最后再分析计算
mysql设计,统计脚本执行的间隔时间。解决方法

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频


网友评论

文明上网理性发言,请遵守 新闻评论服务协议

我要评论
  • mysql设计,统计脚本执行的间隔时间。解决方法
  • 专题推荐

    作者信息
    mysql设计,统计脚本执行的间隔时间。解决方法

    认证0级讲师

    推荐视频教程
  • mysql设计,统计脚本执行的间隔时间。解决方法javascript初级视频教程
  • mysql设计,统计脚本执行的间隔时间。解决方法jquery 基础视频教程
  • 视频教程分类