h2. About amq-client
amq-client is a fully-featured, low-level AMQP 0.9.1 client that runs on Ruby 1.9.3, 1.9.2, Rubinius 2, JRuby, 1.8.7 and REE.
It's sweet spot is in serving as foundation for higher-level, more opinionated AMQP libraries.
It can be used directly by applications code when performance and access to
advanced AMQP protocol features is more important that API convenience.
h2(#amqp_gems_family). How does amq-client relate to amqp gem, amq-protocol and libraries like bunny?
|--------------| |-----------------------| |----------------------|
| amq-protocol | | amq-client | | amqp gem, bunny, etc |
| - Encoding | ===> | - IO abstraction | ===> | - high-level API |
| - Decoding | | - Low-level AMQP API | | - opinionated |
| | | - Framing | | |
|--------------| |-----------------------| |----------------------|
h2. Adapters
Currently implemented adapters:
h3. EventMachine adapter
At this point EventMachine adapter is feature-complete, well-tested, supports 5 Ruby implementations
(1.8.7, 1.9.2, JRuby, Rubinius, Ruby Enterprise Edition) plus Microsoft Windows(tm) and
is used by amqp gem starting with version 0.8.0.
h3. cool.io adapter
cool.io adapter is on par with EventMachine but is not used by any popular libraries (that we know of).
Note that cool.io doesn't work on JRuby and Microsoft Windows(tm).
h2. Installation
amq-client is available from rubygems.org:
gem install amq-client
If you use Bundler and want to use the very latest version, add this to your Gemfile:
gem "amq-client", "~> 1.0.0"
h2. See also