If you have a company, whether technological or more traditional, you're sure to ever be forced to use message queues, whether physical (order forms in a restaurant, for example) or technological (RabbitMQ, Amazon SQS, etc.). These queues are very important assets for the operation of the company, as without them there would be no way to make any communication between the different areas (kitchen and tables in the case of the restaurant) or different programs (in the case of the technology company).
As this is a technology blog, from now we will always talk about technological message queues.
We'll start by talking a little about these message queues. At the operational level, basically, these message queues would work like a pile of papers. The programs fill the stack with new messages, while other programs collect them. These messages can contain anything from simple text to files.
Advantages
Let's start by commenting above the advantages of this technology:
- Efficient distribution of messages between the different processes or programs within your company..
- Automatic storage. Messages are stored until they are read, making it possible to avoid the storage part of them and being able to focus on the use we make of them.
- Great scalability. As the number of programs that make use of them increases, there is no noticeable drop in performance.
- Decoupling between programs. By only having to interpret the messages of the queues, the programs are not so dependent on each other.