【问题标题】:Incrementing a Page View Count with Varnish and ESI使用 Varnish 和 ESI 增加页面查看次数
【发布时间】:2012-01-08 15:50:09
【问题描述】:

如果我使用 Varnish 来缓存我的整个文档,你会建议我通过什么机制来增加页面浏览量。

例如,假设我有一个拍卖列表,例如 ebay,我想缓存整个页面,因为我知道它永远不会改变。

然后您将如何增加此列表的页面查看次数。

假设我的应用程序是从 Zend Framework 运行的。 将 ESI(Edge Side Include)添加到 node.js 服务器以增加 Redis 中的页面查看次数是否正确?

我正在寻找能够 100% 支持并能产生准确的页面查看请求数的东西。 (我也不担心重复请求,我会在我的应用程序逻辑中处理这个问题,以防止一个 IP 破坏页面查看次数)。

【问题讨论】:

    标签: zend-framework node.js varnish esi


    【解决方案1】:

    我会将您的统计逻辑与您的应用程序分开。使用一小段 javascript 请求具有唯一时间戳的资源(例如,/statistics?pageId=3&ts=234234249 之类的图像)。您可以缓存您的完整页面(无需担心 ESI),并由 node.js、netty、tornado 等快速(多路复用)服务器处理统计信息。

    如果您需要页面中的 pageCount,请请求一小段 javascript/json 数据而不是图像,并在 javascript 中更新 DOM。

    这样,您可以记录更好的统计信息(例如页面的尺寸),最大限度地减少流量并将统计信息作为单独的关注点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-21
      相关资源
      最近更新 更多