RabbitMQ - Efficient delivery of messages in complex routing scenarios
A software architect who deals with a lot of microservice-based systems must have surely come across or implemented RabbitMQ, which is a message queuing software and can be simply understood as a “Message Broker”. The aim of this software is to facilitate asynchronous messaging between various services or simply define queues, to which applications connect in order to transfer a message or messages.
RabbitMQ implements pub/sub using message exchanges, A publisher publishes its messages to a message exchange without knowing who the subscribers of these messages are. Each consumer can subscribe to exchange by creating a queue, the message exchange then queues produced messages for consumers to consume. Based on various routing rules It can also filter messages for some subscribers. These routing parameters are controlled using RabbitMQ’s API.
– Aditya Singh