Микросервис аукционов
для FTL-перевозчика

Веб системы
Логистика

Full Truck Load (FTL) — перевозка это перевозка грузов, когда машина перевозит груз только одного заказчика.
Компании FTL — перевозчики, которые привлекают подрядные организации, сталкиваются с проблемой определения цены перевозки и выбора подрядчиков. Менеджеры рассматривают заявки подрядчиков, сопоставляют цены и назначают заявки на перевозчиков. Это трудоёмкий процесс.

Компания Globaltruck FTL-перевозчик, который располагает парком из 1305 тягачей, 1457 полуприцепов, 1006 тентовых полуприцепов, 1491 рефрижераторных полуприцепов.

Globaltruck обратилась в Интабию с целью оптимизировать время работы менеджеров.

globaltruck-ftl

Задача

Внедрение системы аукциона для распределения заявок субподрядчикам

Решение

Для решения задач в экосистеме Globaltruck разработали отдельный микросервис, который упрощает работу с заявками и работает по принципу аукциона.
Интабия разработала дизайн интерфейса рабочего места менеджера, реализовала серверную и презентационную часть.

globaltruck-auction-microservice-decision-illustration

Особенность сервиса — мгновенное изменение текущей цены лота. Перевозчики видят изменения цен, и меняют ставки. Для решения этой задачи использовали WebSocket. Cоздали интерактивное соединение между сервером и клиентом (браузером) для обмена сообщениями в реальном времени. Удалось не только внедрить WebSocket, но и обобщить архитектурные решения для дальнейшего использования.

Технологии

  • Websocket

    Websocket

  • Spring 5

    Spring 5

  • Java 11

    Java 11

  • Kafka

    Kafka

  • Kubernetes

    Kubernetes

  • Yandex-Cloud

    Yandex Cloud

  • GitLab-CI

    GitLab CI

  • Figma

    Figma

  • Vue.js

    Vue.js

  • Lodash

    Lodash

  • Axios

    Axios

Проект с достаточно большим набором ui-компонентов и экранных форм, к слову, в разработке которых мы также принимали участие.

Проект дал нам интересный опыт работы с технологиями, которые используются у нас достаточно редко, в первую очередь это Vue.js.

Александр Хахолин

Руководитель отдела frontend-разработки

Alexsander-Haholin

Первое использование web-socket на проекте обернулось большой, но увлекательной задачей. По итогу, работ над аукционами было меньше, чем с web-sockets, так как аукционы — это один сервис, а web-sockets — целых три.

Василий Лусников

Руководитель проекта

Lusnikov-Vasilii