Pika RabbitMQ客户端服务能否同时使用和发布消息?

Pika RabbitMQ客户端服务能否同时使用和发布消息?,rabbitmq,messaging,microservices,pika,python-pika,Rabbitmq,Messaging,Microservices,Pika,Python Pika,有Pika经验的人能否就以下功能是否可行,或者我的想法是否表明缺乏对Pika的概念性理解,快速回答“是/否” 我想要的功能: Python服务(单线程脚本)使用SelectConnection适配器与我的RabbitMQ代理建立了一个连接 该连接有两个通道 使用一个通道A,服务声明一个队列并绑定到某个exchange E1。 另一个通道B用于声明其他一些交换E2 该服务通过A使用队列中的消息。 它对这些消息进行一些小的处理,[可能通过与MongoDB实例的连接执行CRUD操作,]然后通过Mong

有Pika经验的人能否就以下功能是否可行,或者我的想法是否表明缺乏对Pika的概念性理解,快速回答“是/否”

我想要的功能:

Python服务(单线程脚本)使用SelectConnection适配器与我的RabbitMQ代理建立了一个连接

该连接有两个通道

使用一个通道A,服务声明一个队列并绑定到某个exchange E1。 另一个通道B用于声明其他一些交换E2

该服务通过A使用队列中的消息。 它对这些消息进行一些小的处理,[可能通过与MongoDB实例的连接执行CRUD操作,]然后通过MongoDB向exchange E2发布消息

我已经彻底阅读了Pika文档,没有找到足够的信息来理解这是否可行


简单地说,一个python脚本可以通过一个selectconnection适配器连接发布和使用吗?

当然可以。您可以通过多种方式实现这一点(通过相同的连接、不同的连接、相同的通道、不同的通道等)


当我在过去实现此功能时,我要做的是创建连接,获取通道并使用其委托(函数)设置消费者。当调用我的consume message函数时,我将获得它附带的通道参数,我将使用该参数将下一条消息发布到另一个队列。如果您不想使用同一频道,您可以简单地设置另一个频道。

您的问题的答案是“是”。只要不跨线程使用连接,就可以使用该连接执行任何操作。谢谢用户8808265。如果你“回答”这个问题,我会接受这个答案。