AdRiver - система управления интернет-рекламой
О компании Справочное руководство Вход в систему
Рекламным агентствам  AdRiver DSP 
Владельцам сайтов  AdRiver SSP 
Управление рекламой  AdRiver DMP 
Новости

Как AdRiver поддерживает высокую скорость выдачи баннеров и обеспечивает отказоустойчивость системы

От чего зависит скорость выдачи баннера

Выдача баннера пользователю состоит из нескольких частей:

  • запрос от пользователя к серверам AdRiver, принимающим входящие запросы (см. «Архитектура системы AdRiver»);
  • выбор подходящего баннера и выдача пользователю ссылки на баннер, хранящийся на одном из серверов-зеркал (все баннеры хранятся на всех зеркалах; зеркала необходимы для того, чтобы тяжёлый контент отдавался c ближайшего к пользователю зеркала);
  • запрос от пользователя к зеркалу за баннером;
  • отгрузка пользователю баннера с зеркала.

Схема AdRiver

Запрос от пользователя и выдача ссылки на сервер-зеркало занимают не более 50 мс., запрос к зеркалу за баннером также занимает около 10 мс. Время отгрузки собственно баннера с зеркала зависит от объёма баннера и от скорости канала пользователя. Баннеры отдаются зеркалом без ограничений по скорости.

Для уменьшения времени выдачи баннера, сервера-зеркала размещаются в разных регионах. Это позволяет перевести внешний трафик во внутренний, локальный для региона. Зеркала также могут использоваться и для проксирования запросов к AdRiver.

Система зеркал

Каждый сервер-зеркало хранит все баннеры всех пользователей AdRiver. Большое число серверов-зеркал, расположенных в сетях разных провайдеров, позволяет исключить ситуацию с невозможностью показа баннера.

Зеркала AdRiver размещаются на сегодняшний день в трёх регионах России, а также в странах ближнего зарубежья, и эта территория расширяется с каждым днём.

Для увеличения карты наведите курсор.

AdRiver использует самое современное, высокопроизводительное оборудование, а также программное обеспечение, разрабатываемое в группе компаний Internest.

Например, сервер с процессором Xeon 5130 и памятью 8 Гб может отдавать до 1 Гбит баннерного трафика.
Все сервера AdRiver используют платформу Intel и работают под управлением операционной системы Gentoo Linux собственной сборки, что позволяет добиться максимальной производительности.

AdRiver предъявляет самые жёсткие требования к услугам, предоставляемым провайдерами. Мы учитываем ширину канала внутреннего трафика, а также ширину канала во внешний Интернет. Среди провайдеров, чьими услугами пользуется AdRiver, такие известные компании:

  • «Элтел»;
  • masterhost;
  • McHost;
  • РТКОММ;
  • EDP-Net;
  • Peter-Service;
  • Prometey;
  • «Сибтел»;
  • ukr.net;
  • Digital Generation;
  • Белтелеком.

Мониторинг работы серверов-зеркал и балансировка нагрузки

На зеркалах используется отказоустойчивый сервер (nginx), доработанный с учётом специфики AdRiver и специальным образом настроенный под выдачу баннеров. С помощью специального модуля ngx_http_stub_status_module происходит постоянный мониторинг количества обработанных запросов с каждого зеркала. Проводится мониторинг следующих параметров:

  • Reading — сколько соединений находится в состоянии обработки;
  • Writing — сколько соединений находится в состоянии записи и начали получать контент;
  • Waiting — сколько всего соединений, проверяемых на активность, или соединений в состоянии обработки запроса;
  • Active — сколько запросов обслуживается;
  • Accepts — сколько всего было принято подключений в секунду.

Графики мониторинга

По результатам тестирований производительности серверов-зеркал, удалось добиться оптимальной конфигурации, в которой сервер может выдавать баннерный трафик во всю ширину канала 1 Гб для любых типов баннеров с размером в пределах от 1Кб до 5Мб при постоянной нагрузке. При этом ни ресурсы компьютера, ни ограничения операционной системы не влияют на число открытых подключений. Таким образом, ресурсы серверов используются оптимальным образом. Текущий запас по полосе исходящего канала с серверов-зеркал больше текущей нагрузки на зеркала в шесть раз.

В том случае, если исходящий трафик с зеркала приближается к пиковому значению, это отображается в системе мониторинга AdRiver. Так же, одним из признаков того, что зеркало не справляется с выдачей баннеров, является число «Waiting» соединений. Если число «Waiting» соединений стремится к числу принятых подключений (Accepts), значит зеркало не успевает отдавать контент и переводит соединения в ожидание. В этом случае нагрузка перераспределяется на другие сервера.

График входящего трафикаГрафик исходящего трафикаКоличество запросов в секунду

Благодаря мониторингу большого набора параметров для всех серверов во всех дата-центрах, как в графиках, так и в системе с sms и e-mail информированием, AdRiver может гарантировать высокую скорость устранения внештатных ситуаций, которые могут возникнуть в ходе эксплуатации серверов.

Кроме указанных мер реагирования, в AdRiver внедрены системы балансировки нагрузки и предупреждения лавинообразной нагрузки на каждый сервер-зеркало в отдельности при запуске объёмных баннеров в интенсивную ротацию.

Последнее обновление: 18.05.2012