如何从流中的最后一条消息开始消费rabbitmq流?

问题描述 投票:0回答:1

我想实现一些与 MQTT 的“保留消息”行为类似的东西。 IE 我想附加一个消费者并立即开始读取最近发送的消息。看起来 Rabbitmq Streams 应该能给我我正在寻找的东西。

我有点卡住了,因为可以将偏移量设置为

last
参见此处),它从最后一个开始读取消息。但我正在寻找的是最后一条消息。

也就是说:当我订阅时,我看不到如何确定当前块中的最后一条消息。

有没有办法设置流中最后一条消息的偏移量?

python rabbitmq pika
1个回答
0
投票

目前无法确定特定卡盘中的最后一条消息。

这是因为客户端没有公开所有的块信息。

当您选择

last
时,您将获得最后一个
chunk
。块本身包含消息的数量。这个信息atm是不暴露的。

您正在使用 PIKA,所以 amqp 方式,但为了在流中获得更多控制,您可以使用本机客户端来提供更多控制。

请参阅此处了解更多详情。

您还可以跟踪消息偏移量以从特定偏移量重新开始消费。例如,参见 java 客户端

我们可以添加该信息。

© www.soinside.com 2019 - 2024. All rights reserved.