Как поиск авиабилетов в Туту обрабатывает 10000 предложений в секунду: вызовы, архитектура, кейсы оптимизации

Архитектура и масштабируемость

Архитектурные паттерны
Оптимизация производительности
Распределенные системы
GO
Оптимизация
Микросервисы

Доклад принят в программу конференции

Целевая аудитория

Backend-разработчики, архитекторы и все, кто интересуется распределенными системами

Тезисы

Поиск авиабилетов кажется простым делом: ввёл «Москва — Сочи» и через несколько секунд получил десятки вариантов. Но за кулисами работает многоуровневый конвейер обработки данных: каждый пользовательский запрос превращается в десятки обращений к внешним API и тысячи предложений. Кешировать их можно лишь на короткое время.

Источники ассортимента сильно различаются по скорости и качеству: ответы приходят через 2 или 10 секунд, пересекаются, противоречат друг другу и быстро устаревают. Мы выявляем дубликаты, устраняем конфликты, обогащаем информацию, а также строим маршруты с пересадками — задачи, которые раньше выполняли специализированные системы.

Ключевая метрика — time‑to‑first‑offer: пользователи ждут быстрых результатов, даже если не все источники успели ответить.

Со временем старые решения перестают справляться: оптимизации начинают тормозить, а бизнес‑требования заставляют пересмотреть архитектуру.

В докладе я расскажу:
- почему поиск авиабилетов — это не просто бизнес‑логика про тарифы, а настоящий Highload со специфическими метриками качества;
- как мы прошли путь от «это не может работать» до «бизнес в нас поверил»;
- как устроены доменные слои поиска и где внутри системы «взрывается» нагрузка;
- на какие компромиссы и приёмы оптимизации пришлось пойти, где не сработали первоначальные идеи;
- каких целей и показателей в продакшн мы достигли, а каких целей достичь не удалось;
- какие новые вызовы стоят перед системой после 5 лет эксплуатации;
- что вы можете применить у себя.

Техлид бизнес-юнита Авиа в Туту. Выясняю, чего хочет бизнес, рисую схемы, помогаю командам стартовать и завершать проекты. Фанат авиаотрасли, убежден что в ней бесконечное множество интереснейших бизнес- и технических решений. Закончил ВМК МГУ в 2013 году. Воспитываю дочку, ремонтирую квартиру, выращиваю деревья, варю квас.

Видео

Другие доклады секции

Архитектура и масштабируемость