2
我是RabbitMQ的新手。RabbitMQ:我可以獲得最新的n條消息嗎?
我使用tyrus
實現了websocket服務器,以便像Push Server一樣實時獲取消息,書籍爲RabbitMQ essentials。
但是,當我斷開連接並重新連接時,服務器發送所有消息 因爲我這樣實現。
consumer = new DefaultConsumer(channel)
{
@Override
public void handleDelivery(final String consumerTag,
final Envelope envelope,
final BasicProperties properties,
final byte[] body) throws IOException
{
handler.handleDelivery(channel, envelope, properties, body);
}
};
所以,我想20個最新消息,當用戶請求(如滾動), 但是,說實話,我無法想象如何實現它。
我想實現這些東西。
當用戶連接到websocket服務器時,服務器發送最新的20條消息。
當用戶打開收件箱佈局併到達滾動底部時,服務器會發送下20條消息。
此用戶連接的新消息, 然後服務器實時發送。
感謝你的答案阿加瓦爾。但隊列消息將從第一條消息中消耗,對吧?如果我想從最新消息中消費,那我該怎麼辦呢? –
如果我理解正確,則需要LIFO行爲QUEUE。我擔心,AMQP本身不提供這樣的實施:http://rabbitmq.1065348.n5.nabble.com/LIFO-queue-td18860.html –