Модуль системы AVZ, отвечающий за управление ставками и приоритизацией публикаций объявлений.
Бизнес-проблема
При миллионах публикаций в день важно решать, какие объявления публикуются в первую очередь, а какие ждут своей очереди. Без приоритизации пиковые нагрузки приводили к заторам и срыву SLA по времени публикации.
Решение
Сервис биддера на Go оценивает каждую публикацию и назначает ей приоритет. Горячие данные о ставках и лимитах хранятся в Redis, события о смене приоритетов передаются асинхронно, поэтому пересчёт приоритетов происходит в реальном времени без блокировок.
Стек
- Go
- Redis
Результаты
- 150ms — среднее время принятия решения по ставке
- 2x — рост пропускной способности очереди публикаций