Files
dc-observatio/services/pcp-route-processing-service/README.md
T
Дмитрий Соловьев d48ddd2657 Init
2026-05-25 14:23:52 +03:00

1.7 KiB

route-passport-kafka-consumer

Минимальный сервис на Kotlin + Spring Boot, который:

  • слушает Kafka topic;
  • получает в сообщении JSON паспорта маршрута;
  • парсит JSON в DTO;
  • больше ничего не делает.

Что внутри

  • RoutePassportConsumerApplication — точка входа Spring Boot.
  • RoutePassportMessageListener — Kafka listener.
  • RoutePassportJsonParserService — сервис парсинга входного JSON в DTO.
  • RoutePassportDto — итоговый DTO из pcp-types-lib.
  • RawPassportEnvelopeDto и связанные Raw* DTO — модель входного JSON из pcp-types-lib.

Как запустить

  1. Поднять Kafka.
  2. Указать адрес брокера в application.yml или через переменную окружения KAFKA_BOOTSTRAP_SERVERS.
  3. При необходимости указать topic через APP_KAFKA_TOPIC.
  4. Запустить приложение:
./gradlew bootRun

Сообщение, которое ожидает сервис

Сервис ожидает, что value Kafka-сообщения — это JSON того же формата, что и src/test/resources/passport_example.json. Поле geometry должно приходить строкой в формате WKT.

Примечание

Поскольку в запросе был указан просто «слушает очередь», реализация сделана через Kafka topic как наиболее типичный вариант для стека Kotlin + Spring и Kafka-ориентированного сервиса.