![]() |
1
27
出身背景你是吗 某些 你需要跟踪“独特”的视图吗? 事实上,我不希望受欢迎的网站试图保持浏览量的唯一性——越大越好,重新访问新评论仍然是显示新内容/评论/广告的额外“浏览量”。“正确性”还有其他可能的微妙之处,对您的用例来说可能很重要,也可能不重要,例如排除爬虫或您自己公司的用户/IP。 与其花时间跟踪独特的浏览量(这没有太大意义),我会考虑计算独特的用户互动,比如在页面上投票/点赞/评论。然后,您可以根据这些指标使用一些公式来确定页面的“受欢迎程度”。在 Radioactivity module for Drupal ,其中“热度”度量是基于基于用户交互的最近度的活动来计算的。 考虑的方法
1) 对于MongoDB中的一个简单视图计数器,我只需要使用
2) 为了获得更准确的视图计数器,我会将问题忽略给 web analytics 平台(无论如何,您应该将其用于您的网站以进行更详细的分析)。例如,您可以使用 Google Analytics API 或者像这样的开源应用程序 Piwik .Web分析系统已经有了用于确定独特用户/视图的解决方案,而API可以通过JavaScript异步调用这些解决方案。
3) 如果实现您自己的独特视图跟踪是一个明确的要求,我会使用一个单独的集合来跟踪视图和
upsert
基于您的唯一性标准(根据
|
![]() |
2
0
你可以解决这个问题的方法之一是使用cookie,一旦用户访问了页面,你可以添加一个cookie,说明他已经访问了该页面,你不需要再计算他。你可以继续添加一些密钥来了解他访问过的所有页面。我知道cookie可以被删除,但在任何解决方案中都会有权衡。 从mongoDB的角度来看,如果你想快速插入和阅读,我建议你做几件事。 1) 当你创建一篇文章时,在你的可能是日志集合中创建一个这样的文档
为什么我不建议添加IP地址或任何其他信息,因为正如您将添加IP地址一样,将要更改的文档大小mongoDB需要找到新的分配空间。从性能角度来看,这很糟糕。由于您只增加计数器,因此不会增加文档的大小,也不需要更改位置。+您可以拥有的文档的最大大小有限制。 2) 提前创建文档将提供直接的更新语句,无需担心是否存在文章Id的文档。 |
![]() |
BujarA · 未识别Google Analytics参考源 7 年前 |
![]() |
marcin2x4 · MS Access-重复值之和 7 年前 |
![]() |
J88 · Firebase/GTM:自定义标签 7 年前 |
![]() |
dhin · 特定用户点击分析中的广告跟踪 7 年前 |