Серверы обработки трафика
Как понять, что изменения кампаний, потоков и доменов дошли до всех серверов, которые принимают клики.
Сервер обработки — часть трекера, которая принимает клики и направляет их по потокам. После изменения кампаний, потоков, офферов, лендингов или доменов трекер публикует новую версию настроек, а серверы обработки подтверждают, что получили её. Результат показан в блоке Применение настроек трафика на странице Админ-панель → Состояние; остальные блоки страницы описаны в разделе Состояние системы. Раздел видят владелец и администратор.
Блок «Применение настроек трафика»
Блок обновляется сам каждые 10 секунд. В нём четыре части:
- общий статус справа от заголовка;
- строка «Подтвердили N из M» — сколько ожидаемых серверов применили текущую версию;
- строка «Версия … · опубликована …» — номер текущей версии настроек и номер опубликованной версии, рядом дата и время публикации. В обычном состоянии номера совпадают;
- таблица серверов.
Настройки считаются применёнными после подтверждения от всех ожидаемых серверов. Пропавший сервер остаётся в списке: состав сам не уменьшается. При сбое сервер обработки продолжает работать с последней полученной версией настроек.
Общий статус
| Статус | Что значит | Что делать |
|---|---|---|
| Применены | Текущая версия опубликована, и её подтвердили все ожидаемые серверы | Ничего |
| Проверка… | Блок ещё не получил первый ответ | Ничего |
| Не удалось проверить применение настроек | Блок не получил ответ панели. Запрос повторится через 10 секунд | Если сообщение не уходит, проверьте карточку postgres на той же странице |
| Публикация не подтверждена | Последняя публикация настроек завершилась ошибкой, или панель не смогла проверить опубликованную версию | Трекер повторяет публикацию сам. Если статус не уходит, проверьте карточку redis и журнал контейнера admin |
| Есть несинхронизированные изменения | Изменения сохранены, но ещё не вошли в опубликованную версию | Ничего: трекер опубликует их сам |
| Проверка серверов недоступна | Панель не смогла прочитать подтверждения серверов. Под сводкой появляется строка «Связь с обработчиками сейчас не подтверждена» | Проверьте карточку redis |
| Повторяются имена серверов | Два или больше работающих сервера назвались одним именем | См. состояние Повторяется имя сервера в таблице ниже |
| Обнаружен сервер вне списка | Работает сервер, которого нет в списке ожидаемых | См. состояние Вне списка ожидаемых |
| Подтверждено не на всех серверах | Хотя бы один ожидаемый сервер не подтвердил текущую версию | Найдите в таблице серверов строку, где состояние не Настройки применены |
Если причин несколько, показана та, что стоит в таблице выше.
Таблица серверов
Колонки: Сервер обработки — имя, Версия — версия настроек, которую сервер подтвердил, Состояние, Последний отклик. Пока отклика не было, в последней колонке стоит «Ещё не получен». У сервера, которого нет в списке ожидаемых, рядом с именем стоит пометка «обнаружен». Сначала идут ожидаемые серверы, затем обнаруженные.
| Состояние | Что значит | Что делать |
|---|---|---|
| Настройки применены | Сервер на связи и подтвердил текущую версию | Ничего |
| Ожидает обновления | Сервер на связи, но подтвердил другую версию | Ничего: сервер перечитывает настройки сам. Если состояние не уходит, посмотрите журнал контейнера redirect |
| Нет отклика | Ожидаемый сервер ни разу не выходил на связь, или с последнего отклика прошло больше 24 часов | Проверьте, что сервер запущен и что его имя совпадает с именем в списке ожидаемых |
| Связь потеряна | Последний отклик сервера старше 30 секунд | Проверьте контейнер redirect на этом сервере и карточку redis |
| Повторяется имя сервера | Несколько работающих серверов назвались одним именем. В скобках — их число | После перезапуска сервера подождите 30 секунд. Если состояние осталось, задайте каждому серверу своё имя |
| Вне списка ожидаемых | Сервер выходил на связь за последние 24 часа, но в списке ожидаемых его нет | Добавьте имя в список или остановите сервер |
| Проверка недоступна | Панель не смогла прочитать подтверждения, или блок не получил ответ. Показывается у всех строк сразу | Проверьте карточку redis |
Карточки postgres и redis находятся на странице Состояние системы. Команды для просмотра контейнеров и журналов — в разделе Где смотреть состояние установки.
Общему статусу Применены мешают работающий сервер вне списка и повтор имени. Запись сервера вне списка, который перестал выходить на связь, статусу не мешает и исчезает из таблицы через 24 часа после последнего отклика.
Сроки
- Сервер обработки сообщает о себе раз в 10 секунд.
- Отклик старше 30 секунд считается потерей связи.
- Записи об откликах хранятся 24 часа. Ожидаемый сервер после этого срока остаётся в таблице с состоянием Нет отклика.
После перезапуска сервера обработки прежнее подтверждение остаётся действующим до 30 секунд. В это время возможны состояние Повторяется имя сервера и общий статус Повторяются имена серверов; под таблицей появляется подсказка «У каждого обработчика должно быть своё имя. После перезапуска подтверждение может занять до 30 секунд.»
Установка на одном сервере
Трекер, поставленный установщиком, работает с одним сервером обработки. Его имя — redirect-main, оно же записано в список ожидаемых. В таблице одна строка, в сводке «Подтвердили 1 из 1». Настраивать ничего не нужно.
Несколько серверов обработки
Состав серверов задаётся при развёртывании двумя параметрами. В панели изменить его нельзя.
| Параметр | Кто читает | Значение |
|---|---|---|
REDIRECT_NODE_ID | Сервис redirect на каждом сервере обработки | Имя этого сервера, например redirect-eu-1. По умолчанию redirect-main |
REDIRECT_EXPECTED_NODE_IDS | Сервис admin на сервере панели | Полный список имён через запятую, например redirect-eu-1,redirect-eu-2 |
Если REDIRECT_EXPECTED_NODE_IDS не задан, ожидается один сервер с именем из REDIRECT_NODE_ID. Установщик ставит один сервер обработки и записывает оба параметра в файл .env.production со значением redirect-main; о файле — в разделе Конфигурация .env.production.
Правила имён:
- от 1 до 64 символов: латинские буквы, цифры, точка, дефис и подчёркивание;
- первый символ — буква или цифра;
- в списке не больше 64 имён;
- пустые и повторяющиеся имена в списке не допускаются;
- сервис с именем или списком, которые нарушают эти правила, не запускается.
Не меняйте имя работающего сервера: под новым именем он появится в таблице как Вне списка ожидаемых, а строка с прежним именем перейдёт в Связь потеряна. Несколько работающих копий с одним именем дают состояние Повторяется имя сервера, а не несколько подтверждённых серверов.
Добавление и вывод сервера
Сервис admin читает список ожидаемых серверов один раз при запуске. Изменённый список действует после того, как сервис запущен заново с новым значением параметра.
- Сначала внесите имя нового сервера в список, затем направляйте на сервер трафик. Работающий сервер вне списка показан как Вне списка ожидаемых, и общий статус не станет Применены.
- При выводе сначала снимите с сервера трафик и остановите его, затем уберите имя из списка. Пока имя в списке, остановленный сервер показан как Связь потеряна, а через 24 часа — Нет отклика.
Чего этот контроль не проверяет
Блок показывает одно: дошла ли текущая версия настроек до серверов обработки. Он не устанавливает и не настраивает серверы. Список ожидаемых серверов нужен только для этого контроля: на обработку кликов он не влияет.
Базы, очередь приёма кликов и доставку событий показывают другие блоки страницы Состояние системы.
Серверы обработки — не то же самое, что proxy-серверы из раздела Proxy-серверы: те принимают трафик доменов на своих адресах и пересылают его трекеру.