AdTech-платформа для RTB-аукционов и рекламных показов

Компания СКЭНД разработала высоконагруженную AdTech-платформу для крупного медиа-провайдера. Платформа обеспечивала показ новостного контента и рекламных блоков на сайтах с высоким трафиком, запускала RTB-аукционы, учитывала показы и клики с минимальной задержкой и работала в частной облачной инфраструктуре клиента без зависимости от публичных облачных сервисов.

Обзор клиента

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

Платформа работала в локальной облачной инфраструктуре клиента, а не в публичном облаке AWS или Azure. Поэтому наша команда не могла использовать их преимущества: автоматическое добавление вычислительных ресурсов, балансировку нагрузки и управляемые CDN.

Клиенту требовалась собственная рекламная платформа, которая запускала RTB-аукционы, выбирала рекламные предложения, считала показы и клики, доставляла разные форматы медийного контента и выдерживала высокий трафик.

Задача

Клиенту нужно было построить платформу, которая по скорости и надежности могла конкурировать с крупными рекламными и медиа-платформами, но работала внутри локальной инфраструктуры.

Основные задачи проекта:

  • работать в локальной облачной инфраструктуре клиента без использования готовых облачных механизмов масштабирования и балансировки нагрузки;
  • обрабатывать более 100 млн запросов в день;
  • загружать рекламный и медиа-контент с задержкой на уровне миллисекунд;
  • поддерживать разные форматы: текстовые блоки, изображения, видеофрагменты, HTML-виджеты, слайдеры и анимацию;
  • учитывать показы, просмотры и клики с минимальной задержкой;
  • передавать точные данные для биллинга, отчетности и рекламной аналитики;
  • разработать не набор отдельных модулей, а готовую платформу с административными панелями, отчетностью, импортом и экспортом данных;
  • разработать модуль учета показов и кликов.

Краткий обзор проекта

Мы разработали высоконагруженную платформу для доставки контента и RTB-рекламы на базе .NET.

MS SQL Always-On Cluster использовался как основная база данных, а Redis хранил счетчики показов и кликов в памяти и ускорял доступ к часто запрашиваемым данным. Redis обновлял данные по показам, просмотрам и кликам почти мгновенно, что было критично для рекламной аналитики и расчета стоимости показов.

Команда СКЭНД также построила сеть для загрузки и показа рекламных материалов для локальной инфраструктуры клиента. Она распределяла изображения, видеофрагменты, HTML-блоки и другие рекламные форматы без зависимости от внешних CDN-провайдеров.

Для DevOps-команды мы разработали систему мониторинга, которая показывала загрузку Redis, состояние сети загрузки контента и ход длительных расчетов в рекомендательной системе.

Отказоустойчивость реализовали на уровне инфраструктуры и приложения. При сбоях оборудования платформа автоматически переключалась на рабочие узлы и восстанавливала сервисы без остановки рекламного процесса.

Решение

RNetPlus развернули в локальной облачной инфраструктуре клиента. Публичные облачные сервисы и готовые CDN не соответствовали целям клиента, поэтому команда СКЭНД отдельно оптимизировала приложение, Redis, MS SQL и собственную сеть доставки контента.

Платформа обрабатывала полный цикл рекламного показа.

Сначала система определяла пользователя по цифровому профилю. Затем запускала быстрый DSP-аукцион и выбирала рекламное предложение с учетом релевантности, истории кликов, популярности материалов и параметров кампании. После этого платформа показывала пользователю выбранный рекламный или новостной блок: изображение, видеофрагмент, HTML5-слайдер или другой интерактивный формат.

Типовая нагрузка составляла около 100 млн просмотров в день. Даже при таком объеме платформа сохраняла задержку на уровне миллисекунд.

Ключевые возможности

  • собственная сеть доставки контента с кэшированием рекламного и медийного контента;
  • учет показов, просмотров и кликов почти в реальном времени;
  • Redis для хранения счетчиков показов и кликов и быстрого обновления статистики;
  • размещение рекламного контента с задержкой на уровне миллисекунд при нагрузке более 100 млн запросов в день;
  • поддержка текстовых блоков, изображений, видеофрагментов, HTML-виджетов, слайдеров и анимированных форматов;
  • RTB-аукционы и DSP-логика для выбора рекламного предложения под конкретного пользователя;
  • интеграция с DMP для формирования пользовательских профилей и таргетированной доставки рекламы;
  • рекомендательная система для подбора новостей и рекламных блоков;
  • административные панели, отчетность, импорт и экспорт данных;
  • мониторинг использования ресурсов, состояния сети доставки контента и производительности расчетных модулей;
  • автоматическое переключение при сбое оборудования и восстановление после сбоев.

Технологический стек

  • Основная платформа: .NET
  • База данных: MS SQL Server, MS SQL Always-On Cluster
  • Кэширование и счетчики: Redis
  • Инфраструктура: Локальная облачная инфраструктура на виртуальных машинах
  • Мониторинг и масштабирование: Собственные инструменты мониторинга и логика масштабирования
  • AdTech-компоненты: DSP-аукционы, RTB-логика и интеграция с DMP
  • Размещение контента: Собственная сеть размещения контента с кэшированием рекламного и медийного контента

Результаты

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

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

  • платформа обрабатывала около 100 млн просмотров в день;
  • собственная сеть размещения контента и кэширование помогли избежать зависимости от дорогих облачных CDN-сервисов;
  • доставка рекламных блоков с задержкой на уровне миллисекунд повысила стабильность показа на сайтах с большим трафиком;
  • точный учет показов, кликов и просмотров улучшил биллинг и рекламную отчетность;
  • DSP-аукционы помогали выбирать наиболее ценные рекламные предложения для каждого показа;
  • интеграция с DMP позволила учитывать пользовательские профили при таргетированной доставке рекламы;
  • рекомендательная система подбирала контент с учетом истории кликов, популярности материалов и интересов пользователя;
  • платформа продолжала доставлять рекламу при сбоях оборудования за счет автоматического переключения на рабочие узлы.

В одном из реальных случаев платформа восстановилась после сбоя MS SQL Always-On Cluster в рождественскую ночь. Доставка рекламы не остановилась, а последствия ограничились небольшими задержками в отчетности.

Нуждаетесь в разработке похожего проекта?

Свяжитесь с нами

Мы любим новые проекты! Напишите нам, и мы ответим вам в ближайшее время.

Спасибо, что написали нам! Ваше сообщение было успешно отправлено. Мы обязательно ответим на него в ближайшее время. Пожалуйста, проверьте, получили ли Вы от нас письмо-подтверждение на указанную Вами почту.