Задать вопрос
@Grohotun

Почему Varnish не использует горячий кеш для отдачи пользователям?

Здравствуйте,

Я использую связку из (NGINX + PHP5-FPM) -> VARNISH -> Пользователь.
Для подогрева кеша используется warm-up. (т.е. каждые 10 минут сервер сам заходит на себя, обновляя кеш)
После чистки кеша - страницы грузятся первый раз около 2 сек, потом - 0.02 сек, так как из кеша (если смотреть логи)

Но! Если зайти простым пользователем с ноута - при первой загрузке страницы она грузится долго, как будто не из кеша. Последующие разы - быстро, из кеша.

Вопрос: почему простому пользователю страница еще раз грузится? Почему не из кеша горячего берется?
Смысл тогда делать кеш?

Модуль используется этот для кеша - https://github.com/nexcess/magento-turpentine/wiki...
  • Вопрос задан
  • 3119 просмотров
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 4
@Grohotun Автор вопроса
Вопрос решился, действительно хеш в VCL считался с учетом user-agent посетителя.
Сделано было это для того, что если используется мобильная версия магазина, но она отдельно кешируется. В случае с адаптивной версией - это не нужно. Теперь все быстро работает.
Ответ написан
opium
@opium
Просто люблю качественно работать
вы берете страницу не из кеша
логично что разогрев кеша у вас не работает
Ответ написан
alexclear
@alexclear
A cat
Дефолтный vcl Varnish запрещает отдавать кэшированные страницы, если в запросе были куки или заголовок авторизации:

if (req.http.Authorization || req.http.Cookie) {
        /* Not cacheable by default */
        return (pass);
    }


Готов поспорить - куки у Вас были.
Ответ написан
z0rg
@z0rg
senior developer / devops
warm-up прогревает кеш скорее всего с юзерагентом other
вывод: надо убирать браузер из хеша
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы