Я не могу предоставить код проекта, поскольку он коммерческий и имеет большую архитектуру. Итак, нам придется создать абстракцию.
Информация:
У меня есть докер-контейнер, в котором выполняется проект Python. Но я установил реплики = 2 (мне нужно использовать две реплики для моего проекта).
Также у меня есть контейнер контроллера, который создает производителя и приложение fastapi и отправляет сообщение с маршрута в очередь. Контейнер был запущен без реплик.
Мое сообщение о публикации:
Код: Выделить всё
self.producer.publish(
body=message,
routing_key=self.queue_name,
correlation_id=uuid4().hex,
exchange=self.exchange_name,
serializer="json",
retry=True,
retry_policy={
'interval_start': 0,
'interval_step': 1,
'interval_max': 5,
'max_retries': 3,
},
timeout=10,
)
Код: Выделить всё
Consumer(
queues=[self.queue],
accept=["json"],
on_message=self.handler,
prefetch_count=1
)
Подробнее здесь: https://stackoverflow.com/questions/793 ... r-replicas
Мобильная версия