Skip to content

HocKu7/my-test-service

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Сервис по оказанию услуги перевозки пассажиров.

Настройка:

  1. Запустить docker контейнер с брокером сообщений RabbitMQ:

run rabbitmq in docker container:

docker run -lt --rm --name rabbitmq -p 5672:5672 -p 15672:15672 rabbitmq:3-management docker run --help (информация о командах) docker ps - посмотреть запущенные контейнеры docker stop [название контейнера]

#Описание процесса работы программы.

Шаг 1: От клиента поступает запрос на оказание услуги перевозки. (REST запрос на "/order-taxi") Программа должна найти по заданным параметрам свободного водителя и вернуть:

  1. ФИО
  2. Марку машины
  3. Идентификатор поездки

Шаг 2: В очередь rabbitmq отправляется сообщение, которое принимается определенным водителем. В базу данных вносится запись о начале поездки.

Шаг 3: Водитель сообщает об окончании поездки (POST запрос на "/trip-over"). В БД должна быть найдена поезда (по идентификатору) и сохранена её стоимость.

Шаг 4: Клиент по идентификатору поездки оценивает её.

#Архитектура:

  1. Решение должно быть разделено на приложение обрабатывающее заявки (центр обработки заявок, ЦОЗ) и приложение заявку выполняющее (автопарк).
  2. Приложение автопарк должно регулярно информировать ЦОЗ о состоянии автомобилей (через брокер сообщений) - должно быть реализовано информирование о выводе автомобиля на ремонт и возвращении его в работу.
  3. Приложение автопарк должно ориентироваться на обработку заявки в определенном городе. (каждому городу должна соответствовать своя очередь сообщений).
  4. Информация о названиях очередей для городов должна находиться в базе данных.

liquibase

rollback example

mvn -Plocal liquibase:rollback -Dliquibase.rollbackCount=1

Swagger

http://localhost:8080/swagger-ui.html localhost:8080/v2/api-docs

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages