1
votes

RabbitMQ supports multiple protocols, AMQP, MQTT, STOMP, ....

When using PHP for example, it's easier to publish using the STOMP library since the PHP AMQP libraries requires compiled C code and is somewhat of a mission to setup if you don't have to.

On the JAVA side, apache camel with AMQP on spring is pretty straight forward.

Is it possible to setup a queue, publish to it via STOMP and then consume via AMQP and then again publish via AMQP and consume via STOMP if the message broker is RabbitMQ?

1

1 Answers

1
votes

Yes, this should work, given that you have installed RabbitMQ's STOMP plugin on your RabbitMQ node(s).

The protocol only defines the communication between client and server and has no impact on a message itself.

You should note that using protocols other than AMQP will most likely come along with limitations and/or worse performance.

There also exist native PHP libraries for RabbitMQ that don't require compiling C code. Unfortunately, I cannot tell you which one is the best, because I am a Java guy ;-).