Стартовали новые рейтинги digital-подрядчиковУспейте принять участие! Предварительные результаты.
Brief
Разработка backend-архитектуры масштабируемого сервиса бронирования отелей для MTC Travel
Brief
#Поддержка и развитие сайта#Проектирование сайта#Программирование сайта

Разработка backend-архитектуры масштабируемого сервиса бронирования отелей для MTC Travel

39 
Brief Россия, Иваново
Поделиться:
Разработка backend-архитектуры масштабируемого сервиса бронирования отелей для MTC Travel
Бюджет

200 000 000

Сфера

Туризм и отдых

Регион

Россия, Москва

Сдано

Сентябрь 2024

Задача

Цель нашего проекта — создание устойчивой, производительной и гибкой backend-инфраструктуры для онлайн-сервиса бронирования отелей. Перед нами стояла задача не просто улучшить текущие процессы, а переосмыслить архитектуру так, чтобы обеспечить масштабируемость, конкурентоспособность и высокий уровень пользовательского опыта.

Заказчиком выступил онлайн-сервис бронирования, который столкнулся с рядом ограничений:

Устаревшая, монолитная структура, затрудняющая масштабирование и подключение новых партнёров.

Отсутствие умных механизмов поиска и ранжирования отелей.

Недостаточная прозрачность ценовой политики в сравнении с конкурентами.

Решение

В рамках проекта было решено:

- Провести анализ имеющейся структуры

- Спроектировать архитектуру под запрос клиента

- Подобрать актуальные компоненты системы и реализовать их

- Провести тестирование готовой системы

- Регулярно мониторить работоспособность сервиса

О каждом этапе работы — далее.

1Исследование и анализ

На первом этапе мы провели глубинный анализ существующей системы и бизнес-потребностей:

- Проанализировали поведение пользователей и выявили, что большинство затрудняется при вводе названий отелей и городов;

- Изучили конкурентные платформы, чтобы понять, какие фичи повышают доверие и увеличивают конверсию;

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

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

- сервис автодополнения;

- сервис конкурентных цен;

- гибкий поисковый механизм с улучшенным алгоритмом сортировки.

2Проектирование архитектуры

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

- Распределённая отказоустойчивая система;

- Простота масштабирования и расширения;

- Инфраструктура, готовая к высоким нагрузкам.

Ключевые технологии:

- Go — за счёт производительности и скорости старта сервисов.

- Elasticsearch — идеален для полнотекстового поиска и автодополнения.

- MongoDB — удобен для хранения конкурентных цен с гибкой схемой.

- Kafka — для асинхронной передачи бигдат-потоков.

- Redis — для ускорения выдачи подсказок и снижения нагрузки.

Kubernetes + Helm — управляемое развёртывание в кластере.

3Реализация компонентов

Suggester — сервис автодополнения

Цель: предоставить пользователю точные и релевантные подсказки при вводе локаций и названий отелей.

Что сделано:

- Построен отдельный сервис на Go, работающий с Elasticsearch.

- Спроектированы индексы с учётом веса частоты запросов, приоритета отелей и пользовательских паттернов.

- Настроена интеграция с Redis для кэширования популярных запросов.

- Добавлены бизнес-метрики: CTR по подсказкам, процент успешных завершений поиска после использования Suggester.

Результат: сокращение времени на поиск, увеличение завершённых бронирований на 7%.

Competitors Pricing — сервис конкурентных цен

Цель: показать пользователю выгоду от бронирования на платформе через шильдик "У нас дешевле".

Что сделано:

- Разработан Kafka-консьюмер, получающий поток данных от партнёров и агрегаторов.

- Реализована очистка и нормализация ценовых данных.

- Информация сохраняется в MongoDB для быстрого доступа.

Из основного поискового сервиса добавлен запрос к этому микросервису, чтобы обогащать выдачу данными о цене конкурентов.

Метрики:

- Кол-во цен по провайдерам.

- Частота показа шильдика.

- Влияние на пользовательскую конверсию.

Результат: повышено доверие пользователей, рост кликов на карточки с пометкой "дешевле", усиление конкурентного преимущества платформы.

Поисковый движок и интеграции с провайдерами

Цель: улучшить релевантность выдачи и упростить подключение новых поставщиков.

Что сделано:

- Реализована новая сортировка на основе рекомендательной логики: учитываются тарифы, рейтинг, скидки.

- Для расчётов выгружались тарифные данные с S3 и использовались в вычислении кастомного рейтинга.

- Удалена жёсткая привязка к конкретным провайдерам — теперь каждый провайдер подключается как отдельный модуль через конфигурацию.

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

4Тестирование и развёртывание

- Написаны unit-тесты и интеграционные тесты для всех компонентов.

- Проведено нагрузочное тестирование, симулирующее реальную нагрузку в пиковые часы.

- Использована инфраструктура на Kubernetes, сборка и деплой через Helm Charts.

- Настроено логирование и мониторинг через ELK, Prometheus и Grafana.

5Поддержка и развитие

- Постоянно дорабатываются метрики.

- Проходят A/B тесты для улучшения алгоритмов подсказок и сортировки.

- Подключаются новые провайдеры и каналы данных.

- Идёт оптимизация индексов в Elasticsearch по данным использования.

Результат

- Время отклика поиска снижено на 40%.

- Конверсия в бронирование выросла на 11% после внедрения рекомендательной логики и конкурентных цен.

- Сокращено время подключения нового провайдера с 2 недель до 2 дней.

- Пользовательский опыт улучшен благодаря автодополнению и прозрачной ценовой политике.

- Архитектура готова к масштабированию и дальнейшему развитию.

Комментарий агентства

Максим Яблоков
Максим Яблоков

Генеральный директор (CEO)

Проект доказал, что продуманная архитектура backend и ориентированность на бизнес-метрики позволяют не только масштабировать продукт, но и добиться реального роста пользовательской активности.

Наш кейс демонстрирует, как технологии Go, Kafka, Elasticsearch и микросервисный подход решают сложные задачи реального бизнеса и делают платформу конкурентоспособной на рынке.

https://travel.bronevik.com/

Стек технологий


Над проектом работали:


Выскажите мнение
Авторизуйтесь, чтобы добавить свой комментарий.
оставить заявку

Хотите заказать похожий проект?

Brief с удовольствием обсудит вашу задачу

Оставить заявку