Skip to content

Консьюмер сообщений

Data.Rentgen получает сообщения из брокера сообщений с использованием консьюмера на основе FastStream, парсит входящие сообщения и создает все распознанные сущности в базе данных. Некорректные сообщения отправляются обратно в брокер в другой топик.

Установка и запуск

С docker

  • Установите Docker

  • Установите docker-compose

  • Выполните следующую команду:

$ docker compose --profile consumer up -d --wait
...

docker-compose загрузит все необходимые образы, создаст контейнеры, а затем запустит процесс консьюмера.

Параметры можно задать через файл .env или секцию environment в docker-compose.yml

docker-compose.yml
1

.env.docker
1

Без docker

  • Установите Python 3.10 или выше

  • Настройте базу данных, выполните миграции и создайте партиции

  • Настройте брокер сообщений

  • Создайте виртуальное окружение

$ python -m venv /some/.venv
...
$ source /some/.venv/activate
...
  • Установите пакет data-rentgen со следующими дополнительными зависимостями:
$ pip install data-rentgen[consumer,postgres]
...

Note

Для механизма аутентификации SASL_GSSAPI вам также необходимо установить системные пакеты, предоставляющие бинарные файлы kinit и kdestroy:

  $ apt install libkrb5-dev krb5-user gcc make autoconf  # Основанные на Debian
  ...
  $ dnf install krb5-devel krb5-libs krb5-workstation gcc make autoconf  # CentOS, OracleLinux
  ...

А затем установить дополнение gssapi:

  $ pip install data-rentgen[consumer,postgres,gssapi]
  ...
  • Запустите процесс консьюмера
$ python -m data_rentgen.consumer
...

См. также

Конфигурация консьюмера