AMQP Versions
As I had mentioned earlier, at work I was “strongly encouraged” to use Azure Service Bus, instead of RabbitMQ (which was the technology I had suggested.)
RabbitMQ has good Ruby support. I had chosen Sneakers (Which uses bunny under the hood)
Since Azure Service Bus also supports AMQP, I was trying to see if we can use these libraries with Azure Service Bus.
But connection itself wouldn’t work. I kept getting FrameTypeError
After a lot of head-scratching and searching, a colleague pointed me to this discusion
AMQP 1.0 is not a “later version” of AMQP 0-9-1, it is a completely different protocol, despite the name and (in theory) the same working group that developed it. Bunny is an AMQP 0-9-1 client.
🤦♂
Azure Service Bus supports AMQP 1.0 while RabbitMQ supports AMQP 0-9-1 🤷♂
While RabbitMQ can support 1.0 via plugin, bunny (client) does not.
So we could not use bunny/sneakers (my first choice) to connect with Azure Service Bus