我应该使用日志文件还是数据库来跟踪展示?

时间:2011-01-18 18:21:26

标签: logging traffic web-analytics impressions

我在iframe中有一张图片(类似于广告),会放置在多个网站中。我应该使用服务器日志文件来查找印象吗?或者我应该使用数据库来跟踪每次展示?

哪种方式更快,可以处理大量流量?感谢

2 个答案:

答案 0 :(得分:1)

这个问题的答案实际上取决于您使用的数据库类型,以及Web服务器磁盘和数据库在部署环境中的实际繁忙程度;

  • 如果每次完成展示时都会记录一个文件的日志条目,这非常快。您可以每天将此文件移动到一个新文件并将其发送到某个后端系统进行处理,您很可能永远不会丢失一个条目(除非您遇到磁盘崩溃)
  • 除非您想使用同一个表对数据进行查询,否则带有表条目的常规mysql数据库可能会过度。它可能也可以很好地扩展,但如果你有大量的流量,你最终可能会有很多条目。
  • 使用nosql数据库可能是一个很好的匹配,这可能会扩展到像twitter这样的扩展 - 虽然大多数网站都不像Twitter,所以它可能是你的需求太多了:)。

如果您有一个常规网站,您可以通过第一种方式轻松完成,因为它很简单。如果没有,你就没有花很多时间。

答案 1 :(得分:0)

对我来说很合理。日志的简单方法可以是例如使用grep从日志中查找正确的调用并计算它们。

正如Knubo所说,压缩已经处理的条目是有道理的,因为10M + /小时你可能会看到相当大的日志文件:)每天做一个过程:

  1. 启动新的日志文件(日志轮换)
  2. 计算昨天日志文件中的正确条目
  3. 归档已处理的日志文件(gzip,bzip2,7zip等)