比如一个人对同一篇文章不停得刷新,这样不能算有效。我现在的想法是当用户第一次浏览文章的时候存一个cookie,cookie里有文章的id,有效期一个小时,如果同一小时,该用户访问该文章,如果cookie存在则不记录。不知道大家又没有更加高端,友好的统计方式。

回答

浏览记录最好通过日志来记录,然后进行日志分析即可,好处是异步。

日志记录用户ID,URL,访问时间。然后简单去做去重统计即可。

登录用户:用户ID+log+时间判断

未登录用户:客户端IP+log+时间判断

cookie也不错的,如果要节约资源直接CNZZ统计、百度统计

cookie记录不太合适,会造成request http header过大,现代浏览器可以用local storage存储在客户端,判断是否存在文章id再进行计数的request

这种统计就交给CNZZ,百度统计,谷歌统计等第三方统计平台吧。

浏览量,单页面浏览量,单人单页面浏览量,老访客,新访客等等都能统计到,展现方式也很友好。

还能数据导出。

可以采用bitmap思想:每篇文章对应一个bitmap,每个uid对应bitmap中的某offset,某uid访问这篇文章,把uid对应的offset置为1。这样就不会出现重复访问的问题,而且有现成的方法计算值为1的bit的数量。如果网站访问量不是很大的话,每篇文章对应的bitmap为128*128足够了。这样有点是简单,缺点可能就是还有存在资源浪费。

自己做个事件记录

客户端:

检测cookie,没有就随机生成一个作为客户标识(uid),并将超时设置很长很长….

js发送一条请求到事件记录服务器,参数:timestamp uid eventName eventValue

eventName 是事件名,比如 postVisit

eventValue是事件值,比如

服务端:

1. 记录事件到文件,可以按时间比如10分钟一个文件

2. 写个脚本 定时(10分钟)处理事件记录文件,根据eventName,eventValue 计算帖子访问量,然后更新数据库中对应字段(累加)

自由组合eventName,eventValue可以做多种事件统计

抛砖引玉一下,异步请求,用bloomfilter后台判断:

用户登录用用户id,用户未登录,用IP+UA或者其他生成用户标识

后台有一个bloomfilter的集合,用来判断是否已存在

php设置浏览次数,【php】集思广益,关于有效浏览次数的计算,大家都是如何来做呢?...相关推荐

  1. html怎么设置虚拟浏览量,WordPress修改增加文章浏览点击量(阅读量)

    新发布的WordPress文章点击浏览数量肯定是0,于是很多访问量网站觉得很不好意思. 比如我这3篇新发布的文章的浏览量都是0. 我个人觉得没什么. 需要的是坚持,每天坚持发布原创的优质文章,排名会好 ...

  2. 详解【java实现】编写一个程序,从键盘读入一段英文(多行),找出其中所有的英文单词,统计每个单词出现的次数,并按照单词出现次数由大到小排序后输出。

    题目: 编写一个程序,从键盘读入一段英文(多行),找出其中所有的英文单词,统计每个单词出现的次数,并按照单词出现次数由大到小排序后输出. 前言: "统计每个单词出现的次数,并且按照由大到小排 ...

  3. python键盘键值表_Python怎么记录键盘鼠标敲击次数|Python统计鼠标点击次数 - PS下...

    看手工耿突发奇想,自己是否也能搞个有意义的脑残程序,于是想到自己能否也统计一下自己敲击键盘的内容?其实一直都有这个想法,今天终于实现这个小心思.网上搜了下已经有别人做过了.于是乎,借鉴了一些别人的程序 ...

  4. 实验四:文件状态测试--动态检测指定文件的状态信息,当文件的大小发生改变时,给出提示信息,并继续前进检测。当文件的大小的变化次数或持续检查无变化次数达到一定值时,退出检查--操作系统原理和实践

    实验目的 熟悉UNIX的基本SHELL程序设计方法,包括: 命令行参数检测 变量设置 文件状态检测与特定信息读取 程序运行控制 实验内容 编写一个SHELL程序,动态检测指定文件的状态信息,当文件的大 ...

  5. 深信服:输入一个字符串,帮忙统计字符串里面的每个单词出现的次数,以及非法单词的次数。非法单词的定义为:包含数字(0-9)的单词

    深信服2018秋招笔试题: 输入一个字符串,帮忙统计字符串里面的每个单词出现的次数,以及非法单词的次数.非法单词的定义为:包含数字(0-9)的单词 输入一个字符串,长度小于1000,输入的字符仅包含( ...

  6. 询问区间内出现次数最多的数出现的次数

    POJ 3368 Frequent Values(RMQ) http://poj.org/problem?id=3368 题意: 给出一个非降序排列的整数数组a1,a2,...an,你的任务是对于一系 ...

  7. 面试题:查询字符串中出现次数最多的字符以及出现次数

    查询字符串中出现次数最多的字符以及出现次数 最优解: // 查询字符串出现最多的次数var randomStr = "sssfgtdaddddddddadadadadadddddfssddf ...

  8. 输入字符串,输出字符串中出现次数最多的字母及其出现次数。如果有多个字母出现次数一样,则按字符从小到大顺序输出字母及其出现次数。

    输入字符串,输出字符串中出现次数最多的字母及其出现次数.如果有多个字母出现次数一样,则按字符从小到大顺序输出字母及其出现次数. [样例输入1] 55552222abcccdaa [样例输出1] a 3 ...

  9. 从F型网页浏览看用户对网页的浏览习惯

    2006年4月,美国长期研究网站可用性的著名网站设计师杰柯柏·尼尔森(Jakob-Nielsen)发表了一项<眼球轨迹的研究>报告. 报告中提出,大多数情况下浏览者都不由自主的以" ...

最新文章

  1. 前后端分离的探索(五)
  2. ReactNative学习笔记(一)环境搭建
  3. VC++ MFC获取对话框上控件的位置
  4. 笑看职场什么程序员才抢手,什么样的程序员涨薪多?
  5. 前端学习(2095):数组里面得方法哪些
  6. ajax与DOM的使用,AJAX和DOM的运行经验
  7. opencv 在工业中的应用:blob分析
  8. 如何在隐藏视图时使用自动布局移动其他视图?
  9. 20170724 Airflow官网资料学习
  10. SqlServer2008创建用户及授予权限
  11. js/vue两张图片合成一张画布
  12. 微信开发获取access_token(凭证)接口的详解
  13. java-net-php-python-jspm广东阳光外国语学校新闻发布计算机毕业设计程序
  14. C语言-随机产生10以内四则运算
  15. transferwise怎么提现_境外收款和汇款工具推荐:TransferWise 可提现美元到国内
  16. Html网页设计-旅游景点介绍
  17. 2022年1~6中国市场汽车销量可视化
  18. C语言——经典200道实例【基础例题100道——进阶例题100道】
  19. 在森林防火中,热成像为何这么鸡肋?
  20. 朋友居然将显示屏幕翻转过来放!——屏幕倒置的解决方法

热门文章

  1. PLC和单片机的区别
  2. Python可视化-地图染色
  3. matlab怎么算描述函数法,极限环非线性系统的描述函数法.ppt
  4. 2022年山东省安全员C证复训题库模拟考试平台操作
  5. 解放sony lt26w 电源
  6. 基于PaddleOCR的文字表格识别与解析方案
  7. matlab ode45设置步长,MATLAB中用ode45求解微分方程,如何设置最大步长?
  8. Qt QTextEdit实现txt,html,markdown,ODF图文编辑器
  9. javax.annotation.processing.FilerException: Attempt to recreate a file for type
  10. 漫画:什么是树状数组?