Reputation: 579
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?
Upvotes: 2
Views: 1455
Reputation: 72888
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.
Upvotes: 3