A while back Magento quietly introduced integration with the open-source message queue management tool RabbitMQ from VMware. This provided a powerful optimization alternative for both Magento 2 Commerce and Open-Source editions. Many eCommerce shops will benefit from Magento’s integration with RabbitMQ by experiencing a more responsive front-end with reduced server load that improves both the shopping experience and the webstore’s availability during peak loads.
Rules-of-thumb for considering RabbitMQ with Magento:
- Any operation that takes 5 or more seconds of real time processing
- If you have three or more third-party services and integrations (ERP,CRM)
- A high volume of transactional processes like checkout, shopping card or credit cards
- Bulk email campaigns or other high load operations
Magento’s Message Queue Framework (MQF) is the system that allows a module to publish messages to queues. MQF utilizes RabbitMQ as the messaging broker to provide a scalable platform for sending and receiving messages. It also includes a mechanism for storing undelivered messages.
RabbitMQ is an open-source message broker that improves the performance and reliability of busy Magento ecommerce stores and other web applications. This provides the Integration Fabric of choice that connects all applications, services, data, processes, devices, and user experience within a single, dynamic web-enabled architecture. One of the key features of messages compared to HTTP requests is that they allow for fully asynchronous communications. Unlike REST APIs, message streaming is better at providing notifications when new messages arrive.
A significant benefit of using RabbitMQ with Magento is a decreased load on the server during peak hours by storing data on the message broker. Previously you used MySQL and Cron Jobs for those purposes, but now RabbitMQ accelerates your current store by decreasing the load on the MySQL database. RabbitMQ should be used in situations where Magento needs to communicate with an ERP System or other dedicated applications.
CSS Commerce has successfully deployed RabbitMQ as a Messaging system for several customers. Our eCommerce and Integration Fabric Practice focuses on delivering state-of-the-art Web and Digital experiences primarily for B2B manufacturing and distribution clients. These extraordinarily successful clients have multiple back-end data sources, as well as the necessity to syndicate to many front-end channels.