Пример паттерна aio-pika RP C вылетает с: RobustConnection: соединение закрыто - PullRequest
0 голосов
/ 20 марта 2020

Я пытаюсь запустить RP C с aio-pika, используя RP C Pattern . Я запустил все, как в документации, просто изменив URL AMPQ, и у меня появляется ошибка:

Task exception was never retrieved
quart_service_01_1  | future: <Task finished coro=<RobustConnection.reconnect() done, defined at /usr/local/lib/python3.6/site-packages/aio_pika/robust_connection.py:149> exception=RuntimeError('<RobustConnection: "amqp://dev_user:******@rabbit:5672/tgvhost" 1 channels> connection closed',)>
quart_service_01_1  | Traceback (most recent call last):
quart_service_01_1  |   File "/usr/local/lib/python3.6/asyncio/tasks.py", line 180, in _step
quart_service_01_1  |     result = coro.send(None)
quart_service_01_1  |   File "/usr/local/lib/python3.6/site-packages/aio_pika/robust_connection.py", line 150, in reconnect
quart_service_01_1  |     await self.connect()
quart_service_01_1  |   File "/usr/local/lib/python3.6/site-packages/aio_pika/robust_connection.py", line 105, in connect
quart_service_01_1  |     raise RuntimeError("{!r} connection closed".format(self))
quart_service_01_1  | RuntimeError: <RobustConnection: "amqp://dev_user:******@rabbit:5672/tgvhost" 1 channels> connection closed

, и прямо перед этой трассировкой кажется, что клиент закрывает соединение с кроликом:

2020-03-20 09:45:23.855 [info] <0.639.0> accepting AMQP connection <0.639.0> (172.30.0.5:40902 -> 172.30.0.3:5672)
rabbit_1            | 2020-03-20 09:45:23.870 [info] <0.639.0> connection <0.639.0> (172.30.0.5:40902 -> 172.30.0.3:5672): user 'dev_user' authenticated and granted access to vhost 'tgvhost'
rabbit_1            | 2020-03-20 09:45:23.917 [info] <0.639.0> closing AMQP connection <0.639.0> (172.30.0.5:40902 -> 172.30.0.3:5672, vhost: 'tgvhost', user: 'dev_user')

Если я попробую RP C реализацию из Rabbit MQ aio-pika, учебник , то все работает отлично. Я не уверен, что это ошибка или какая-то неправильная конфигурация с моей стороны, но я использовал эту настройку кролика с pika (не aio) и nameko framework и проблем не было. Нет, я хочу перейти на Asyn c Quart Framework, и поэтому мне нужно иметь RP C с AIO-PIKA.

Docker RabbitMQ 3.7.5 AIO-PIKA 6.6.0 Python 3.6

...