RabbitMQ logo

RabbitMQ

Open source multiprotocol messaging broker
20.3K
17.7K
+ 1
528

What is RabbitMQ?

RabbitMQ gives your applications a common platform to send and receive messages, and your messages a safe place to live until received.
RabbitMQ is a tool in the Message Queue category of a tech stack.
RabbitMQ is an open source tool with 11K GitHub stars and 3.9K GitHub forks. Here’s a link to RabbitMQ's open source repository on GitHub

Who uses RabbitMQ?

Companies
2057 companies reportedly use RabbitMQ in their tech stacks, including Robinhood, reddit, and Tech Stack.

Developers
17497 developers on StackShare have stated that they use RabbitMQ.

RabbitMQ Integrations

Datadog, Buddy, Netdata, TimescaleDB, and StackStorm are some of the popular tools that integrate with RabbitMQ. Here's a list of all 28 tools that integrate with RabbitMQ.
Pros of RabbitMQ
234
It's fast and it works with good metrics/monitoring
80
Ease of configuration
59
I like the admin interface
50
Easy to set-up and start with
21
Durable
18
Standard protocols
18
Intuitive work through python
10
Written primarily in Erlang
8
Simply superb
6
Completeness of messaging patterns
3
Scales to 1 million messages per second
3
Reliable
2
Distributed
2
Supports AMQP
2
Better than most traditional queue based message broker
2
Supports MQTT
1
Clusterable
1
Clear documentation with different scripting language
1
Great ui
1
Inubit Integration
1
Better routing system
1
High performance
1
Runs on Open Telecom Platform
1
Delayed messages
1
Reliability
1
Open-source
Decisions about RabbitMQ

Here are some stack decisions, common use cases and reviews by companies and developers who chose RabbitMQ in their tech stack.

Needs advice
on
KafkaKafka
and
RabbitMQRabbitMQ

I want to collect the dependency data that Java applications build in the maven tool by CI/CD tools. I want to know how to pick collection tech, and what is the pros and cons between Kafka an RabbitMQ.

Thanks!

See more
waheed khan
Associate Java Developer at txtsol · | 3 upvotes · 20.4K views
Needs advice
on
JavaJavaKafkaKafka
and
Spring BootSpring Boot

Hi all, I'm working on a project where I have to implement Messaging queues in a project. I just need to know about your personal experience with these queues which is best (RabbitMQ or Kafka).

Thanks

See more
Mary Olowu
Technical operations Engineer · | 6 upvotes · 30.3K views
Needs advice
on
Node.jsNode.jsRabbitMQRabbitMQ
and
RedisRedis

I am developing a microservice architecture that necessitates service-to-service communication. Validating authorization using a token that is passed from the auth service to the other services is one of these needs. I'm thinking about using the RPC communication strategy with Redis or RabbitMQ. Any suggestions?

See more
Needs advice
on
KafkaKafkaRabbitMQRabbitMQ
and
RedisRedis

We are currently moving to a microservice architecture and are debating about the different options there are to handle communication between services. We are currently considering Kafka, Redis or RabbitMQ as a message broker. As RabbitMQ is a little bit older, we thought that it may be outdated. Is that true? Can RabbitMQ hold up to more modern tools like Redis and Kafka?

See more
Pulkit Sapra
Needs advice
on
Amazon SQSAmazon SQSKubernetesKubernetes
and
RabbitMQRabbitMQ

Hi! I am creating a scraping system in Django, which involves long running tasks between 1 minute & 1 Day. As I am new to Message Brokers and Task Queues, I need advice on which architecture to use for my system. ( Amazon SQS, RabbitMQ, or Celery). The system should be autoscalable using Kubernetes(K8) based on the number of pending tasks in the queue.

See more
Needs advice
on
CeleryCelery
and
RabbitMQRabbitMQ

I am just a beginner at these two technologies.

Problem statement: I am getting lakh of users from the sequel server for whom I need to create caches in MongoDB by making different REST API requests.

Here these users can be treated as messages. Each REST API request is a task.

I am confused about whether I should go for RabbitMQ alone or Celery.

If I have to go with RabbitMQ, I prefer to use python with Pika module. But the challenge with Pika is, it is not thread-safe. So I am not finding a way to execute a lakh of API requests in parallel using multiple threads using Pika.

If I have to go with Celery, I don't know how I can achieve better scalability in executing these API requests in parallel.

See more

Blog Posts

GitHubPythonNode.js+47
54
71929
GitHubGitDocker+34
29
42226
JavaScriptGitHubPython+42
53
21350
GitHubPythonSlack+25
7
3091
GitHubPythonDocker+24
13
16956
GitHubMySQLSlack+44
109
50585

RabbitMQ's Features

  • Robust messaging for applications
  • Easy to use
  • Runs on all major operating systems
  • Supports a huge number of developer platforms
  • Open source and commercially supported

RabbitMQ Alternatives & Comparisons

What are some alternatives to RabbitMQ?
Kafka
Kafka is a distributed, partitioned, replicated commit log service. It provides the functionality of a messaging system, but with a unique design.
ActiveMQ
Apache ActiveMQ is fast, supports many Cross Language Clients and Protocols, comes with easy to use Enterprise Integration Patterns and many advanced features while fully supporting JMS 1.1 and J2EE 1.4. Apache ActiveMQ is released under the Apache 2.0 License.
ZeroMQ
The 0MQ lightweight messaging kernel is a library which extends the standard socket interfaces with features traditionally provided by specialised messaging middleware products. 0MQ sockets provide an abstraction of asynchronous message queues, multiple messaging patterns, message filtering (subscriptions), seamless access to multiple transport protocols and more.
Amazon SNS
Amazon Simple Notification Service makes it simple and cost-effective to push to mobile devices such as iPhone, iPad, Android, Kindle Fire, and internet connected smart devices, as well as pushing to other distributed services. Besides pushing cloud notifications directly to mobile devices, SNS can also deliver notifications by SMS text message or email, to Simple Queue Service (SQS) queues, or to any HTTP endpoint.
Redis
Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache, and message broker. Redis provides data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs, geospatial indexes, and streams.
See all alternatives

RabbitMQ's Followers
17654 developers follow RabbitMQ to keep up with related blogs and decisions.