doubijiao2094
doubijiao2094
2016-08-14 11:18

如何在RabbitMQ中手动提取队列数据?

已采纳

Since I have started to learn RabbitMQ I'm confused over one issue. The publisher publishes message and the consumer connects to the channel and receives the message. Means that this is a push architecture and not pull architecture where consumer will automatically receive the message when its available.

I'm in a scenario where I want to connect to the server and pull the latest message in the queue manually. I have google alot and gone through many examples and didn't come to any conclusion.

I have referred to this link lastly: https://www.binpress.com/tutorial/getting-started-with-rabbitmq-in-php/164

Can anyone provide me any sort of snippet in PHP in which I can pull latest message manually?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答

  • douwei2825 douwei2825 5年前

    the AMQP protocol defines a "basic consume", which is where consumers automatically receive messages from a queue.

    it also defined a "basic get", which allows you to retrieve a single message from a given queue.

    generally speaking, "consume" is what most code should do, so that messages will be received and processed as quickly as possible. but the "get" option does exist for scenarios where you don't want automatic consumption of messages.

    the PHP AMQPLib library contains a basic_get method on the channel object, for this scenario in php.

    点赞 评论 复制链接分享