- Show all articles ( 1 ) Collapse Articles
Owl Cloud Services
Shopware 5 Connector
Shopware 6 Connector
Export via RabbitMQ
Often, the Shopware 6 system is the bottleneck while exporting, as it requires a significant amount of time to process the messages sent by the SAWSConnector.
To speed up the export for the Contentserv system you can use an RabbitMQ-server for transferring import messages.
This, of Course, requires an additional RabbitMQ-server which you may also acquire through our Owl cloud services.
Shopware doesn’t natively support importing via RabbitMQ, but instead requires the SAWSConnector plugin.
The plugin is only needed for transfers via RabbitMQ.
Please note that this functionality requires Version 1.15 or higher of the SAWSConnector.
The Shopware 6 Connector only requires you to provide a RabbitMQ user account.
Together with the SAWSConnector licence and the OWL, we also deliver a RabbitMQ solution that you can use. For more information, see Rabbit MQ Connection.
The Shopware Plugin will configure all other neccesary changes (Exchanges / Queues) once connected.
Setting Up The Shopware Plugin
First you have to install the Pluigin “SAWS MessageQueue Import Plugin”
Connection to RabbitMQ
After installing the plugin, you will find a new option in your shopware system settings called “SAWSConnector”.
This will open the dialog for configuring your connection to RabbitMQ.
On the left you will see your connection status. After a fresh install your connection is disabled.
On the right you will find the connection options. You can either fill those options from scratch or load the default options and customize those.
|Enable connection||If checked, the plugin will try to establish a connection to the RabbitMQ-server|
|Host||The domain or ip-address under which the RabbitMQ-server can be reached.|
|Port||The Port to connect to. The standart Port is 5672.|
|Virtual Host||The virtual host you want to connect to on your RabbitMQ-server.|
|Username||The user you created for the Shopware connection. For security reasons, please don’t use your administrative user.|
|Password||The password of your RabbitMQ-user.|
|Exchange||This is the name of the exchange. This should reflect which shop you’re connecting, if you connect several shops ver the same virtual Host. e.g.: Shopware1|
|Queue for requests to Shopware||This is the name of the Queue in which the plugin will search for messages from ContentServ. e.g.: Shopware1-request|
|Queue for responses from Shopware||This queue will be used to return the Shopware-api response to Contentserv. e.g.: Shopware 1-response|
|Queue for worker status checks||This queue is only used by the plugin itself. Using this queue the plugin can check not only if the connection works, but also if the worker is active.|
Configuring The Worker
The worker is a process that runs in the background and accepts the RabbitMQ-messages. After receiving a message, it will forward it to the Shopware-API and send the result back to RabbitMQ.
To temporarily start the worker, you may use the following command.
bin/console messenger:consume saws_ping_queue saws_request_queue --time-limit=3600 --memory-limit=256M
The worker will shut down after the specified time or if the memory limit is exceeded.
For this reason, you should start the worker either as a service (e.g. using systemd) or using a process manager like supervisord!!!
Exporting to RabbitMQ Using The SAWSConnector
Now you just have to configure your Shopware 6 station to export via RabbitMQ.
You can find the relevant options in your station settings under data transmission.
Station Settings -> Data Transmission -> RabbitMQ Settings
Here, you just have to replicate the same settings you already used in the Shopware plugin.
These are the additional settings provided in the connector:
|Close “Waiting”-Jobs (in minutes)||How long the connector should wait for responses for this job before marking the export as closed (crashed).|
If you have configured the RabbitMQ correctly, the SAWS Connector job runs in two stages (asynchronous). The first stage exports the data to the RabbitMQ and in the second stage the SAWS connector waits for the response from the Shopware system. This response is also sent via RabbitMQ.
When the transfer has been successfully finished, the messages should be visible in the RabbitMQ overview.