Ruby amqp gem

Get started in an instant, read our guides, see our API reference and code examples , get the source

Join the community:

follow @rubyamqp , join rabbitmq-discuss and ruby-amqp lists


This site is dedicated to Ruby amqp gem and AMQP 0.9.1 protocol features in general. Ruby amqp gem is a widely used, feature-rich, well-maintained, fast asynchronous AMQP 0.9.1 (RabbitMQ) Ruby client with batteries included.


About Ruby amqp gem

Ruby amqp gem is a widely used, feature-rich, well-maintained, fast asynchronous AMQP 0.9.1 (RabbitMQ) Ruby client with batteries included.

About AMQP 0.9.1

AMQP is an open standard for messaging middleware that emphasizes interoperability between different technologies (for example, Java & JVM languages, .NET, Ruby, Python, Node.js, Erlang, C and so on).

Key features of AMQP are very flexible yet simple routing and binary protocol efficiency. AMQP supports many sophisticated features, for example, message acknowledgements, returning of messages to producer, redelivery of messages that couldn't be processed, load balancing between message consumers and so on.

This site is open source.

Source for this site is open source and hosted on Github If you find an issue, feel free to make edits and submit a pull request!

Tell us what you think!

Please take a moment to tell us what you think about these guides on Twitter or the Ruby AMQP mailing list.

If you find bugs or inconsistencies in thid guide, please report them using GitHub issues.

Guides

AMQP 0.9.1 Model Explained.
A simple 2 page long introduction to the AMQP Model concepts and features. Understanding the AMQP Model will make a lot of other documentation, both for the Ruby amqp gem and RabbitMQ itself, easier to follow. With this guide, you don’t have to waste hours of time reading the whole specification.
Getting Started with Ruby amqp gem and RabbitMQ
Walks you through gem installation and 3 applications that demonstrate what AMQP has to offer. Explains how amqp gem should be integrated into rich object-oriented Ruby programs.
Connecting to the broker.
This guide explains how to connect to an AMQP broker and how to integrate the amqp gem into standalone and Web applications.
Working With Queues.
This guide focuses on features that consumer applications use heavily.
Working With Exchanges.
This guide focuses on features that producer applications use heavily.
Working with bindings
This guide covers bindings, what they are, what role do they play and typical operations.
Patterns & Use Cases.
This guide focuses implementation of common messaging patterns using AMQP Model features as building blocks.
Error Handling & Recovery.
This guide explains how to handle protocol errors, network failures and other things that may go wrong in real world projects.
amqp gem 0.8 migration guide.
Learn how to migrate your amqp gem 0.6.x and 0.7.x applications to 0.8.0 and later and why you should do it.
Durability & Related Matters.
Learn about queue & exchange durability, publishing messages as persistent and how they are related.
Using TLS (SSL) connections
Describes how to connect to RabbitMQ using TLS (SSL)-encrypted connections
RabbitMQ and other vendor specific AMQP extensions
This guide describes using RabbitMQ and other vendor specific AMQP extensions with Ruby amqp gem
Troubleshooting your AMQP applications
Explains what to do when your AMQP applications using Ruby amqp gem and RabbitMQ misbehave