Увеличение количества просмотров страниц с помощью Varnish и ESI - PullRequest
6 голосов
/ 29 ноября 2011

Если я использую Varnish для кэширования всех моих документов, каким механизмом вы бы посоветовали увеличить число просмотров страниц.

Например, давайте предложим, чтобы у меня был список аукционов, например, ebay.и я хотел бы кэшировать всю страницу, так как знаю, что она никогда не изменится.

Как бы вы увеличили количество просмотров страниц этого списка?

Допустим, мое приложение запущено из Zend Framework.Было бы правильно сделать ESI (Edge Side Include) для сервера node.js, который увеличивает количество просмотров страниц в Redis?

Я ищу что-то, что будет поддерживаться на 100% и даст точные номера запросов на просмотр страницы.(Меня также не волнуют повторяющиеся запросы, я буду обрабатывать это в своей логике приложения, чтобы один IP не обнулял количество просмотров страниц).

1 Ответ

7 голосов
/ 29 ноября 2011

Я бы отделил вашу логику статистики от вашего приложения.Используйте небольшой фрагмент JavaScript, который запрашивает ресурс с уникальной временной меткой (например, изображение типа /statistics?pageId=3&ts=234234249).Вы можете кэшировать всю свою страницу (не нужно беспокоиться о ESI) и обрабатывать статистику на быстром (мультиплексном) сервере, таком как node.js, netty, tornado.

Если вам нужен pageCount на вашей страницезапрашивать небольшой фрагмент данных javascript / json вместо изображения и обновлять DOM в javascript.

Таким образом, вы можете регистрировать более качественную статистику (например, размеры страницы), минимизировать трафик и хранить статистику отдельнобеспокойство.

...