Сервис асинхронной обработки и нормализации собранных данных.
- читает
source.raw.v1из RabbitMQ; - валидирует raw-события;
- нормализует payload до формата
source.normalized.v1; - публикует нормализованные события и отправляет ingest mutation в
backend-api.
- consumer RabbitMQ (
src/messaging/queue-client.ts); - нормализатор (
src/normalize.ts); - валидация raw/normalized схем через Ajv;
- GraphQL-клиент отправки в backend (
src/backend-client.ts); - Dockerfile и CI workflow.
cp .env.example .env
npm install
npm run start:devRABBITMQ_URLQUEUE_RAW_EVENTQUEUE_NORMALIZED_EVENTAPI_GRAPHQL_URLSHARED_CONTRACTS_DIR
- получает события от
scraper-service; - использует схемы из
shared-contracts; - отправляет результаты в
backend-api.