ASP.NET 和 C# 页面查看计数器:使用数据库

2023-12-24

我正在开发一个类似于 stackoverflow.com 概念的项目

会有很多问题,我希望每个问题都有一个页面浏览计数器。

我觉得最好的方法是使用数据库,因为问题的数量会很大,而且会随着时间的推移而增加。

如果我只创建一个表,那就很容易了问题_观点每个问题占一行。

像这样的东西。

ID-----Question_ID------Views
1-------23--------------400
2-------24--------------301
3-------25--------------123

但页面计数器是否考虑 IP 地址?意思是,如果我打开第23题的网页,然后改天我再看这个题,它是加1还是加2?

如果我需要考虑 IP 地址,这种方法是错误的,对吗?


这听起来很简单 - 但如果您喜欢精确的计数器,那就不容易了。
你有

  • 读取您的页面并为其建立索引的机器人,无论是已知的还是未知的
  • 禁用 cookie 和/或禁用 javascript 的用户
  • Google 和 Bing 从您的网站捕获图像以进行实时预览
  • 用户反复加载页面进行刷新
  • 位于公司防火墙后面并具有公共 IP 的用户。
  • 由于使用动态 ip 连接而更改 ip 的用户
  • 试图操纵数据的攻击者。

只是这个YouTube 删除了数十亿天 http://www.dailydot.com/news/youtube-universal-sony-fake-views-black-hat/来自页面浏览量的虚假统计数据!

所以现在的问题是,你要测量什么?

  1. Visits ?
  2. 访客?
  3. 页面浏览量?
  4. 独特的页面浏览量?

对于如何衡量观点至关重要。

对于您如何识别是访客而不是机器人或试图操纵计数器的攻击者也很重要?

一种想法是跟踪所有参数,并显示独特的页面视图。一个用户可以算作 1 个唯一的页面浏览,即使对于具有 cookie 的会话来说该页面浏览了 10 次。当会话过期并且用户再次到来时,例如,如果他在 60 分钟后没有会话,那么您将再次对他进行计数。

这里的困难在于找到所有的机器人,以及看到一页就走的“虚假用户”。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ASP.NET 和 C# 页面查看计数器:使用数据库 的相关文章

  • 如何为 C 分配的 numpy 数组注册析构函数?

    我想在 C C 中为 numpy 数组分配数字 并将它们作为 numpy 数组传递给 python 我可以做的PyArray SimpleNewFromData http docs scipy org doc numpy reference
  • 如何将 #ifdef DEBUG 添加到 Xcode?

    我的项目中有一些代码永远不应该在发布版本中使用 但在测试时很有用 我想做这样的事情 ifdef DEBUG Run my debugging only code endif 在 Xcode 4 中哪里添加 DEBUG 设置 我尝试将其放入
  • 将内置类型转换为向量

    我的 TcpClient 类接受vector
  • 在新的浏览器进程中打开 URL

    我需要在新的浏览器进程中打开 URL 当浏览器进程退出时我需要收到通知 我当前使用的代码如下 Process browser new Process browser EnableRaisingEvents true browser Star
  • 在 Unity 进程和另一个 C# 进程之间进行本地 IPC 的最快方法 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我希望每秒大约 30 次从 C 应用程序向我的 Unity 应用程序传送大量数据 由于 Unity 不支持映射内存和管道 我考虑了 t
  • 生成(非常)大的非重复整数序列而不进行预洗牌

    背景 我编写了一个简单的媒体客户端 服务器 我想生成一个不明显的时间值 随从客户端到服务器的每个命令一起发送 时间戳中将包含相当多的数据 纳秒分辨率 即使它不是真正准确 因为现代操作系统中计时器采样的限制 等 我想做的 在 Linux 上
  • 用于检查项目文件中的项目变量和引用路径的 api

    我正在研究一个 net application VS2010 与 x 没有 解和变量号这些解决方案中的项目数量 我需要检查项目属性 特定于一定数量的项目 是否同质 并且检查 验证构建期间的参考路径 有没有一个API是这样的吗 如果没有 我该
  • C# Dns.GetHostEntry 不返回连接到 WiFi 的移动设备的名称

    我有一个 C 中的 Windows 窗体应用程序 我试图获取列表中所有客户端的主机名 下面给出的是 ra00l 来自此链接的代码示例 GetHostEntry 非常慢 https stackoverflow com questions 99
  • 当下拉列表内部触发选定索引更改事件时,引导模式关闭

    我在 Bootstrap 模式中有一个 ASP NET 图表 一切都工作正常 直到我在里面添加了一个下拉列表 每次我在下拉列表中选择一个新项目时 所选项目更改事件都会触发 并且如果事件内没有代码 则 Boostrap 模式会关闭 这是模式引
  • 验证插件在更新面板中不起作用

    我有一个更新面板 面板内有文本框和按钮可用 现在我正在使用 jQuery Validation 插件 但是在更新面板中使用时验证插件不起作用 例如 function GetAddressTargetList var objArray new
  • 为什么我的 ASP.NET MVC 应用程序在单个会话中多次触发 Session_Start?

    我们有一个 MVC NET 应用程序在重新启动时遇到致命错误 在 Session Start 事件处理程序中 我们将会话 id 添加到字典中 在 Session End 处理程序中 我们将其删除 考虑以下请求序列 获取主页 mvc 获取ma
  • 如何将整数转换为 void 指针?

    在 C 中使用线程时 我面临警告 警告 从不同大小的整数转换为指针 代码如下 include
  • C++:.bmp 到文件中的字节数组

    是的 我已经解决了与此相关的其他问题 但我发现它们没有太大帮助 他们提供了一些帮助 但我仍然有点困惑 所以这是我需要做的 我们有一个 132x65 的屏幕 我有一个 132x65 的 bmp 我想遍历 bmp 并将其分成小的 1x8 列以获
  • 等待线程完成

    private void button1 Click object sender EventArgs e for int i 0 i lt 15 i Thread nova new Thread Method nova Start list
  • 私有模板函数

    我有一堂课 C h class C private template
  • .NET中的LinkedList是循环链表吗?

    我需要一个循环链表 所以我想知道是否LinkedList是循环链表吗 每当您想要移动列表中的 下一个 块时 以循环方式使用它的快速解决方案 current current Next current List First 电流在哪里Linke
  • (de)从 CSV 序列化为对象(或者最好是类型对象的列表)

    我是一名 C 程序员 试图学习 C 似乎有一些内置的对象序列化 但我在这里有点不知所措 我被要求将测试数据从 CSV 文件加载到对象集合中 CSV 比 xml 更受青睐 因为它更简单且更易于人类阅读 我们正在创建测试数据来运行单元测试 该集
  • 如果方法参数是 string 或 int,ASP.NET WebAPI 会抛出 404

    我对 ASP NET MVC4 WebAPI 做了一个非常简单的测试 发现了一些有趣的问题 当一个方法采用复杂类型时 它会起作用 但是当它采用 string 或 int 时 它将抛出 404 如给出的屏幕截图所示 AddProduct 可以
  • 有没有办法强制显示工具提示?

    我有一个验证字段的方法 如果无法验证 该字段将被清除并标记为红色 我还希望在框上方弹出一个工具提示 并向用户显示该值无效的消息 有没有办法做到这一点 并且可以控制工具提示显示的时间 我怎样才能让它自己弹出而不是鼠标悬停时弹出 If the
  • 使用 GhostScript.NET 打印 PDF DPI 打印问题

    我在用GhostScript NET http ghostscriptnet codeplex com打印 PDF 当我以 96DPI 打印时 PDF 打印效果很好 但有点模糊 如果我尝试以 600DPI 打印文档 打印的页面会被极大地放大

随机推荐