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:
Using Message Queue in Oro Application¶
- Message Queue Jobs and Transport Configuration
- Message Queue Component in Oro Application
- DBAL Transport Options and Limitations
- AmqpMessageQueue Component (Enterprise Edition Only)
- RabbitMQ Transport (via AmqpOroMessageQueue Bundle)
- Configure Message Queue with RabbitMQ for Production
- Backup and Restore RabbitMQ
- Divide Single Queue to Separate Queues
- RabbitMQ Command Lines
- Writing Logs to ELK Stack
- Logging, Error Handling and Debugging