Gestore messaggi
Adobe Commerce utilizza il broker di messaggi open-source RabbitMQ. Offre un sistema di messaggistica affidabile, ad alta disponibilità, scalabile e portatile.
Le code di messaggi forniscono un meccanismo di comunicazione asincrona in cui il mittente e il destinatario di un messaggio non si contattano a vicenda. Non è necessario che comunichino con la coda di messaggi contemporaneamente. Quando un mittente inserisce un messaggio in una coda, questo viene memorizzato fino a quando il destinatario non lo riceve.
Prima di installare Adobe Commerce, è necessario stabilire il sistema della coda di messaggi. La sequenza di base è:
- Installa RabbitMQ ed eventuali prerequisiti.
- Connetti RabbitMQ ad Adobe Commerce.
Installa RabbitMQ su Ubuntu
Per installare RabbitMQ su Ubuntu 16, immettere il comando seguente:
sudo apt install -y rabbitmq-server
Questo comando installa anche i pacchetti Erlang richiesti.
Se si dispone di una versione precedente di Ubuntu, RabbitMQ consiglia di installare il pacchetto dal sito Web.
- Scarica il pacchetto .deb da rabbitmq-server.
- Installa il pacchetto con
dpkg
.
Per ulteriori informazioni, vedere Installazione su Debian/Ubuntu.
Installa RabbitMQ su CentOS
Installa Erlang
RabbitMQ è stato scritto utilizzando il linguaggio di programmazione Erlang, che deve essere installato nello stesso sistema di RabbitMQ.
Per ulteriori informazioni, vedere Installazione manuale.
Per installare la versione corretta, consultare la RabbitMQ/Erlang versione.
Installa RabbitMQ
Il server RabbitMQ è incluso in CentOS, ma la versione è spesso precedente. RabbitMQ consiglia di installare il pacchetto dal proprio sito Web.
Per ottenere la versione supportata più recente, fare riferimento alla pagina di installazione di RabbitMQ. Adobe Commerce 2.3 e 2.4 supportano RabbitMQ 3.8.x.
Per ulteriori informazioni, vedere Installazione su Linux basato su RPM.
Configura RabbitMQ
Consulta la documentazione ufficiale di RabbitMQ per configurare e gestire RabbitMQ. Presta attenzione ai seguenti elementi:
- Variabili di ambiente
- Accesso alla porta
- Account utente predefiniti
- Avvio e arresto del broker
- Limiti di sistema
Installa con RabbitMQ e connetti
Se installi Adobe Commerce dopo installi RabbitMQ, aggiungi i seguenti parametri della riga di comando durante l'installazione:
--amqp-host="<hostname>" --amqp-port="5672" --amqp-user="<user_name>" --amqp-password="<password>" --amqp-virtualhost="/"
Dove:
--amqp-host
--amqp-port
5672
.--amqp-user
guest
.--amqp-password
guest
.--amqp-virtualhost
/
.--amqp-ssl
false
. Se imposti il valore su true, consulta Configurare SSL per ulteriori informazioni.Connetti RabbitMQ
Se Adobe Commerce è già installato e si desidera connetterlo a RabbitMQ, aggiungere una sezione queue
nel file <install_directory>/app/etc/env.php
in modo che sia simile alla seguente:
'queue' =>
array (
'amqp' =>
array (
'host' => 'rabbitmq.example.com',
'port' => '11213',
'user' => 'magento',
'password' => 'magento',
'virtualhost' => '/'
),
),
È inoltre possibile impostare RabbitMQ valori di configurazione utilizzando il comando 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="/"
Dopo aver eseguito il comando o aggiornato il file <install_directory>/app/etc/env.php
con i valori di configurazione AMQP, eseguire bin/magento setup:upgrade
per applicare le modifiche e creare le code e gli scambi necessari in RabbitMQ.
Configurare SSL
Per configurare il supporto per SSL, modificare i parametri ssl
e ssl_options
nel file <install_directory>/app/etc/env.php
in modo che siano simili ai seguenti:
'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'
],
),
),
Avvia i consumer della coda di messaggi
Dopo aver connesso Adobe Commerce e RabbitMQ, è necessario avviare i consumer della coda messaggi. Per ulteriori informazioni, vedere Configurare le code dei messaggi.