Message queues provide an asynchronous communications protocol, meaning that the sender and the receiver of the message do not need to interact with the message queue at the same time. Messages placed onto the queue are stored until the recipient retrieves them. A message does not have information about previous and next messages.
Therefore, a message queues should be used if:
- A process can be executed asynchronously.
- A process does not affect user experience.
- Processes need to be executed in parallel for faster performance.
- You need a guarantee of processing.
- You need scalability.
For more information, see the following external resources: