在一台服务器上,我想要一个Queue(缓冲区),当有连接到另一台服务器时,它应该Shovel它的消息到那里的Stream。我想使用Python客户端和Stream协议访问Stream,这意味着消息需要采用amqp 1.0格式(我知道这与amqp 1.0协议不同,正如RabbitMQ自己所述)。
我在本地机器上运行两个容器/ RabbitMQ服务器。一个是普通的队列和铲子,另一个是溪流。两者都启用了amqp 1.0(和管理)。
我能够连接队列和流,但只能在两端使用amqp 0.9.1。这样做不会将消息转换为我需要的amqp 1.0格式,而且我的Python客户端会抛出解码错误。我还不能将队列和流与任何其他协议组合,uri,...
为了将数据上传到队列,我使用pika。为了访问Stream,我使用rbfly。
是我错过了什么,还是这根本不可能?
为大家干杯,MoE
1条答案
按热度按时间ifmq2ha21#
对于未来的读者:
每个流客户端都需要实现AMQP 1.0消息格式解析器。
rstream客户端支持amqp 1.0消息格式,并且与其他客户端兼容。
我们创建了一个repo来混合所有客户端,以确保一切都能按预期工作。