Технически поисковая система Яндекс имеет N-ое число внешний обрабатывающих серверов или frontend-ов, которые кэшируют выдачу из поискового индекса Яндекса по запросам пользователей. Такой подход позволяет снизить нагрузку на внутренние сервера поддерживающие индекс и ускорить время обработки вторичных запросов.
Когда посетитель выполняет запрос, то попадает на распределитель нагрузки (балансировщик сетевого уровня), который перенаправляет посетителя к одному из внешних серверов исходя из IP-посетителя, его Cookie и загруженности внешних серверов. Эти внешний сервера являются так называемыми метапоисковыми серверами, поскольку перед кешированием они:

  • «общается» с несколькими сотнями базовых поисков, хранящих индексы и архивы, а также с полутора десятками параллельных поисков.
  • соединяют все полученные данные воедино («отрисовывают» выдачу)
  • производят окончательную чистку дубликатор
  • делают различные «секретные» манипуляции с результатом

И только после этого выполняют кеширование результата.

Кеш формируется так — первый запрос пользователя, отсутствующий в кеше обслуживающего сервера, обрабатывается мета-поиском, а его результат кешируется. Если после этого какой-нибудь другой пользователь обрабатывается тем же frontend-сервером и выполняет тот же самый запрос, то он получит, такой же результат, как и первый пользователь, поскольку результат будет выдан из кеша. Кеш автоматически сбрасывается во время апдейтов индекса или если запрос долго не задавали (около суток).

Чтобы узнать, какой внешний сервер (frontend) Яндекса обслуживает запрос посетителя, следует зайти на страницу http://www.yandex.ru/cgi-bin/hostname, где показывается имя обслуживающего сервера. Имена этих серверов обычно имеют вид sfront*.yandex.ru.

Нет комментариев

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *