Closed RuthgerD closed 1 year ago
lapin implements AMQP 0.9.1 protocol, and fe2o3-amqp implements the AMQP 1.0 protocol, and only AMQP 1.0 is an ISO standard. Despite the similarity in the name, they are different and incompatible. So this will really depend on what messaging service you are planning to use. RabbitMQ supports AMQP 0.9.1 by default but can support AMQP 1.0 with a plugin. All other major AMQP based messaging services (that I am aware of) support AMQP 1.0 instead, including but not limited to:
Here's a curated list of AMQP 1.0 related material maintained by someone who works at Microsoft: https://github.com/xinchen10/awesome-amqp
This is an almost complete implementation of the AMQP 1.0 core protocol with the exception on the transaction acquisition part, whose details are not clear in the spec and is not planned to be implemented unless more detailed explanation is provided. This started out as a personal project and still is a personal project so far (any contributions would be welcome though). I started this project because I didn't see a full rust implementation that was somewhat complete or easy to use, and I will keep maintaining this project.
Hopefully this helps. Feel free to reach out, I will be more than happy to help.
Aha, I apologize for my ignorance regarding 0.9.1 and 1.0; quite an unfortunate situation that is.. sadly my needs are still "stuck" in 0.9.1 land so I will see my self the door.
Thank you for enriching the rust ecosystem however!
This library seems quite promising for the ampq space, but as there is only a single (very active) contributor at this time I have to ask what this library is developed for?
Can fe2o3-amqp compete with https://github.com/amqp-rs/lapin ? I would like to try and use this library but unsure if it is ready for it.
thanks.