Брокер сообщений
Брокер сообщений - это компонент, используемый REST API Сервером/Планировщиком для связи с Рабочим процессом(воркером).
SyncMaster может работать практически с любым брокером, поддерживаемым Celery. Но единственный брокер, который мы тестировали, это RabbitMQ.
Требования
- RabbitMQ 4.x. Рекомендуется использовать последнюю версию RabbitMQ.
Настройка
С Docker
-
Установите Docker
-
Установите docker-compose
-
Выполните следующую команду:
$ docker compose --profile broker up -d --wait
...
docker-compose загрузит образ RabbitMQ, создаст контейнер и том, а затем запустит контейнер.
Точка входа образа создаст базу данных, если том пуст.
Параметры можно установить через файл .env или раздел environment в docker-compose.yml
docker-compose.yml
rabbitmq: image: rabbitmq:4 restart: unless-stopped ports: - 5672:5672 volumes: - rabbitmq_data:/var/lib/rabbitmq healthcheck: test: rabbitmq-diagnostics -q ping start_period: 5s interval: 30s timeout: 5s retries: 3 postgres_data: rabbitmq_data:
config.yml
broker: url: amqp://guest:guest@localhost:5672
Без Docker
Пожалуйста, следуйте инструкции по установке RabbitMQ.