courtier de messages
Adobe Commerce utilise le courtier de messages Open Source RabbitMQ. Il offre un système de messagerie fiable, hautement disponible, évolutif et portable.
Les files d’attente de messages fournissent un mécanisme de communication asynchrone dans lequel l’expéditeur et le destinataire d’un message ne se contactent pas. Ils n’ont pas non plus besoin de communiquer simultanément avec la file d’attente des messages. Lorsqu'un expéditeur place un message dans une file d'attente, il est stocké jusqu'à ce que le destinataire les reçoive.
Le système de file d’attente des messages doit être établi avant l’installation d’Adobe Commerce. La séquence de base est la suivante :
- Installez RabbitMQ et toutes les conditions préalables.
- Connectez RabbitMQ à Adobe Commerce.
Installer RabbitMQ sur Ubuntu
Pour installer RabbitMQ sur Ubuntu 16, saisissez la commande suivante :
sudo apt install -y rabbitmq-server
Cette commande installe également les packages d’erreur requis.
Si vous disposez d'une ancienne version d'Ubuntu, RabbitMQ recommande d'installer le package sur son site web.
- Téléchargez le package .deb depuis rabbitmq-server.
- Installez le package avec
dpkg
.
Pour plus d’informations, voir Installation sur Debian/Ubuntu .
Installer RabbitMQ sur CentOS
Installation de l’erreur
RabbitMQ a été écrit en utilisant le langage de programmation Erlang, qui doit être installé sur le même système que RabbitMQ.
Voir Installation manuelle pour plus d’informations.
Pour installer la version correcte, reportez-vous à la matrice de version RabbitMQ/Erlang.
Installer RabbitMQ
Le serveur RabbitMQ est inclus sur CentOS, mais la version est souvent ancienne. RabbitMQ recommande d’installer le package sur son site web.
Consultez la page d’installation de RabbitMQ pour obtenir la dernière version prise en charge. Adobe Commerce 2.3 et 2.4 prennent en charge RabbitMQ 3.8.x.
Pour plus d’informations, voir Installation sous Linux RPM .
Configurer RabbitMQ
Consultez la documentation officielle RabbitMQ pour configurer et gérer RabbitMQ. Prêtez attention aux éléments suivants :
- Variables d’environnement
- Accès au port
- Comptes utilisateur par défaut
- Démarrage et arrêt du courtier
- Limites du système
Installation avec RabbitMQ et connexion
Si vous installez Adobe Commerce après avoir installé RabbitMQ, ajoutez les paramètres de ligne de commande suivants lors de l’installation :
--amqp-host="<hostname>" --amqp-port="5672" --amqp-user="<user_name>" --amqp-password="<password>" --amqp-virtualhost="/"
Où :
--amqp-host
--amqp-port
5672
.--amqp-user
guest
.--amqp-password
guest
.--amqp-virtualhost
/
.--amqp-ssl
false
. Si vous définissez la valeur sur true, voir Configuration de SSL pour plus d’informations.Connexion RabbitMQ
Si vous avez déjà installé Adobe Commerce et que vous souhaitez le connecter à RabbitMQ, ajoutez une section queue
dans le fichier <install_directory>/app/etc/env.php
afin qu’elle soit similaire à ce qui suit :
'queue' =>
array (
'amqp' =>
array (
'host' => 'rabbitmq.example.com',
'port' => '11213',
'user' => 'magento',
'password' => 'magento',
'virtualhost' => '/'
),
),
Vous pouvez également définir des valeurs de configuration RabbitMQ à l’aide de la commande bin/magento setup:config:set
:
bin/magento setup:config:set --amqp-host="rabbitmq.example.com" --amqp-port="11213" --amqp-user="magento" --amqp-password="magento" --amqp-virtualhost="/"
Après avoir exécuté la commande ou mis à jour le fichier <install_directory>/app/etc/env.php
avec des valeurs de configuration AMQP, exécutez bin/magento setup:upgrade
pour appliquer les modifications et créer les files d’attente et les exchanges requis dans RabbitMQ.
Configurer SSL
Pour configurer la prise en charge du protocole SSL, modifiez les paramètres ssl
et ssl_options
du fichier <install_directory>/app/etc/env.php
afin qu’ils ressemblent à ce qui suit :
'queue' =>
array (
'amqp' =>
array (
'host' => 'rabbitmq.example.com',
'port' => '11213',
'user' => 'magento',
'password' => 'magento',
'virtualhost' => '/',
'ssl' => 'true',
'ssl_options' => [
'cafile' => '/etc/pki/tls/certs/DigiCertCA.crt',
'certfile' => '/path/to/magento/app/etc/ssl/test-rabbit.crt',
'keyfile' => '/path/to/magento/app/etc/ssl/test-rabbit.key'
],
),
),
Démarrez les consommateurs de la file d’attente de messages.
Après avoir connecté Adobe Commerce et RabbitMQ, vous devez démarrer les consommateurs de la file d’attente des messages. Pour plus d’informations, voir Configuration des files d’attente de messages .