Назад в портфолио

AllTheRooms

Единая система поиска и бронирования номеров, представлены результаты более чем 400 букинг сайтов

AllTheRooms - портал для бронирования жилья. Это обширная поисковая система для путешественников, объединяющая крупнейшие сайты (Expedia, Airbnb и Jetsetter) и другие набирающие популярность туристические ресурсы. AllTheRooms сравнивает цены на всех этих сайтах, чтобы вы могли забронировать номер, помещение или дом в любой точке мира по наиболее выгодной цене. Наша команда была привлечена для написания вспомогательного проекта для AllTheRooms. Требовалось создать приложение, самостоятельно собирающее информацию из десятков провайдеров через API, а также с помощью custom scrappers для букинг-сайтов, не имеющих API (или имеющих ограничения доступа). Сложность задачи обуславливалась требованием к скорости создания каждой подпрограммы (не более 2-3х часов на один провайдер), с учетом того, что для каждого из них приходилось подбирать наиболее оптимальный комплекс инструментов. 

Задача

Для сервиса мы реализовали:

  • сбалансированное использование распределенной сети прокси серверов (чтобы предотвратить блокирование запросов поставщиком по IP);
  • подбор таймингов и частоты запросов, а также логики повторных запросов с использованием дросселирования (throttling);
  • калибровка цен в зависимости от налоговых условий и всевозможных формул вычисления/отображения комиссий провайдерами, которые влияют на конечную фактическую цену бронирования;
  • выбор и реализация основного способа парсинга интересующих полей (API, PhantomJS/CasperJS, http request & regexp parser logic, specificity of ajax & pagination & crawling handling);
  • для быстрой выдачи доступных вариантов бронирования по запросу пользователя реализована логика извлечения информации из кеша с фоновой актуализацией, что делает архитектуру одновременно способствующей возможности выполнения множества параллельных запросов (highload), а также позволяет пользователям видеть актуальные доступность и цены вариантов бронирования.

Команда проекта

3 Back-end разрабочика

1 Менеджер проекта

1 Системный архитектор

1 QA инженер

Хотите заказать
у нас разработку?

Закажите у нас разработку

Заполните форму,
и мы свяжемся
с вами
на следующий рабочий день

1. Расскажите о своем проекте:

2. Ваш бюджет на проект:

3. Как с вами связаться?

Другие наши проекты
Safari

Разработка веб-портала эксклюзивных африканских сафари

Upside

Cервис бронирования отелей, авиабилетов и автомобилей

Турагентство ANEX Tour

Разработка портала для франчайзи

Shypple

Сервис доставки и трекинга морских грузов