Overview
RabbitHub
is a RabbitMQ plugin-based implementation of PubSubHubBub (a
simple web-hook-based pub/sub protocol) that provides an HTTP-based interface
to RabbitMQ. It gives every AMQP exchange and queue hosted by the broker two
URL’s: one to use for delivering messages to the exchange or queue, and one to
use to subscribe to messages forwarded on by the exchange or queue. Subscriptions
supply a callback URL to RabbitHub that is used to deliver messages via HTTP
POST. While the initial aim of the plugin was support for PubSubHubBub, the
plugin provides a generally useful, easy to use, and efficient means of
interacting with RabbitMQ in a RESTful manner. When used in combination with
other plugins such as those for STOMP, WebSockets, and MQTT, the result is an
extremely powerful and flexible messaging solution. Messages may be published
via one protocol and consumed by another (or indeed by multiple protocols when
messages are published to fanout or topic exchanges).
RabbitHub
was originally written by Tony Garnock-Jones (one of the original members of
the RabbitMQ team) in 2009; however RabbitMQ has evolved considerably since
this time, and it has been necessary to update the code in order for it to work
with current RabbitMQ versions. The updated code and
additional
notes can be found at https://github.com/tonyg/rabbithub,
and the binary distribution (which also happens to include the sources) can be
found here.
The complete installation and user guide may be found here.
If you would like pre-built kit, please send an email to brett.r.cameron AT gmail.com and johndapps AT gmail.com and we will be happy to oblige.
More on B&J's work may be found on their homepage.