Pingdom нарушает кэширование вывода IIS при использовании varByHeaders (Cookie)
В последнее время я много исследовал кэширование вывода и смог успешно реализовать кэширование вывода в IIS через web.config с помощью varyByQueryString
или же varyByHeaders
,
Тем не менее, существует проблема мониторинга производительности и реальных пользователей Pingdom (или PRUM). У них есть немного "веселья" beforeUnload
рутина, которая устанавливает PRUM_EPISODES
cookie, как только вы уходите со страницы, чтобы можно было рассчитать время загрузки следующей страницы. Значение этого куки в основном unixtimestamp()
который меняется каждую секунду.
Как вы можете видеть, это полностью нарушает кэширование вывода в пользовательском режиме, потому что теперь каждый запрос будет отправляться с другим Cookie
заголовок на каждый последующий запрос.
Итак, два вопроса:
- Моя первая склонность говорит, чтобы найти способ бросить
PRUM_EPISODES
куки, прежде чем он достигнет сервера, так как он не имеет смысла для реального приложения (это также мой неофициальный запрос наClientOnly
флаг в следующей версии HTTP). Кто-нибудь знаком с техникой удаления отдельных файлов cookie до того, как они достигнут механизма кэширования вывода IIS, или каким-либо другим способом использованияvaryByHeaders="Cookie"
игнорируяPRUM_EPISODES
? Не нашел такой техники дляWeb.config
на данный момент. - Все ли системы мониторинга манипулируют cookie-файлами таким образом (изменяя каждый запрос страницы) для своих механизмов отслеживания, и не понимают, что таким образом они нарушают кэширование вывода в пользовательском режиме?