AMQP is on its way to become a popular, well-established messaging protocol. I had some time to put up a native AMQP transport for Apache Synapse and following features are ready as of now.
- Producer/Consumer
- Publish/Subscribe(fanout exchange)
- Worker queue(fair dispatching in a round robin manner)
- Routing(direct exchange)
- Publish/Subscribe to a topic(topic exchange)
The transport is based on the excellent RabbitMQ AMQP Java client library. The source code is here. In order to compile and build the binary just type 'mvn clean install'(you will need an installation of Apache Maven on your path). The READM.txt has sample configurations which explain how to use those features. Other features such as two way communication, transaction support, durability and QoS aspects are yet to implement. Stability of the code to avoid resource(such as file descriptors, memory etc..) leaking is yet to test under heavy load.