Clients Libraries and Developer Tools
RabbitMQ is officially supported on a number of
operating systems and has several official client libraries. In addition, the RabbitMQ community
has created numerous clients, adaptors and tools that we list here for
your convenience.
Please contact us with suggestions for things you
would like to see added to this list.
Note: items with a check mark (✓) are officially supported by Team RabbitMQ and VMware.
Java
Spring Framework
Client libraries:
Higher level frameworks:
- NServiceBus, the most popular open-source service bus for .NET.
- Brighter, a Command Processor & Dispatcher implementation with support for task queues
- Cambion, an MIT licensed open-source distributed application framework for .NET
- EasyNetQ, an easy to use, opinionated .NET API for RabbitMQ
- MassTransit, an open-source distributed application framework for .NET.
Miscellaneous projects:
- RabbitMQTools, PowerShell module containing cmdlets to manage RabbitMQ
Miscellaneous projects:
- Celery, a distributed task queue for Django and pure Python
- ✓ php-amqplib a pure PHP, fully featured RabbitMQ client
- RabbitMqBundle incorporates RabbitMQ messaging with the Symfony2 web framework
- PECL AMQP library built on top of the RabbitMQ C client
- Thumper a library of messaging patterns
- CAMQP an extension for the Yii framework providing a gateway for RabbitMQ messaging
- AMQP Interop is a set of unified AMQP 0-9-1 interfaces in PHP and their implementations
- Bowler is a RabbitMQ client abstraction for Laravel
- amqplib: RabbitMQ (AMQP 0-9-1) client for Node.js
- amqp-client: High performance client for both NodeJS and browsers (WebSocket), written in TypeScript
- rabbit.js: message patterns in node.js using RabbitMQ.
- rabbitmq-stream-js-client: RabbitMQ Stream NodeJS client.
- amqp-stats: a node.js interface for RabbitMQ management statistics
- Rascal: a config driven wrapper for amqp.node supporting multi-host connections,
automatic error recovery, redelivery flood protection, transparent encryption and channel pooling.
- node-rabbitmq-client: RabbitMQ (AMQP 0-9-1) client library with auto-reconnect, zero dependencies, TypeScript support, and Promise-based API.
- ComQ: Production grade RPC and pub/sub.
Scala
Groovy and Grails
Clojure
JRuby
- ✓ RabbitMQ CLI tools
- ✓ rabbitmqadmin, a command line tool that targets RabbitMQ HTTP API
- amqp-utils, command line utils for interacting with an AMQP based queue (in Ruby)
- amqptools, command line AMQP clients (in C)
- rabtap, RabbitMQ wire tap and swiss army knife command line tool (in go)
- RabbitFoot, an asynchronous and multi-channel RabbitMQ client using Coro and AnyEvent::RabbitMQ
- AnyEvent::RabbitMQ, an asynchronous and multi-channel RabbitMQ client
- NetAMQP, a native AMQP 0-9-1 client for Ocaml tested against RabbitMQ
- cl-rabbit a Common Lisp client library for RabbitMQ
- Wireshark is the world's foremost
network protocol analyzer
Getting Help and Providing Feedback
If you have questions about the contents of this guide or
any other topic related to RabbitMQ, don't hesitate to ask them
using GitHub Discussions
or our community Discord server.
Help Us Improve the Docs <3
If you'd like to contribute an improvement to the site,
its source is available on GitHub.
Simply fork the repository and submit a pull request. Thank you!