Nachrichtenbroker

Adobe Commerce verwendet den Open-Source-Nachrichtenbroker RabbitMQ. Es bietet ein zuverlässiges, hochverfügbares, skalierbares und portables Messaging-System.

Nachrichtenwarteschlangen bieten einen asynchronen Kommunikationsmechanismus, bei dem sich Absender und Empfänger einer Nachricht nicht miteinander in Verbindung setzen. Sie müssen auch nicht gleichzeitig mit der Nachrichtenwarteschlange kommunizieren. Wenn ein Absender eine Nachricht in eine Warteschlange stellt, wird sie so lange gespeichert, bis der Empfänger sie erhält.

Das Meldungswarteschlangesystem muss eingerichtet werden, bevor Sie Adobe Commerce installieren. Die grundlegende Sequenz lautet:

  1. Installieren Sie RabbitMQ und alle Voraussetzungen.
  2. Verbinden Sie RabbitMQ mit Adobe Commerce.
NOTE
Sie können MySQL oder RabbitMQ für die Verarbeitung von Nachrichtenwarteschlangen verwenden. Weitere Informationen zum Einrichten des Nachrichtenwarteschlangensystems finden Sie unter Übersicht über Nachrichtenwarteschlangen. Wenn Sie die Bulk-API mit Adobe Commerce verwenden, verwendet die Nachrichtenwarteschlangensystemkonfiguration standardmäßig RabbitMQ als Nachrichtenbroker. Weitere Informationen finden Sie unter Start message queue consumer .

Installieren Sie RabbitMQ auf Ubuntu

Um RabbitMQ auf Ubuntu 16 zu installieren, geben Sie den folgenden Befehl ein:

sudo apt install -y rabbitmq-server

Mit diesem Befehl werden auch die erforderlichen Erlang-Pakete installiert.

Wenn Sie eine ältere Version von Ubuntu haben, empfiehlt RabbitMQ, das Paket von ihrer Website aus zu installieren.

  1. Laden Sie das .deb-Paket von rabbitmq-server herunter.
  2. Installieren Sie das Paket mit dpkg.

Weitere Informationen finden Sie unter Installieren auf Debian/Ubuntu .

Installieren Sie RabbitMQ auf CentOS

Installieren von Erlang

RabbitMQ wurde mit der Programmiersprache Erlang geschrieben, die auf demselben System wie RabbitMQ installiert sein muss.

Weitere Informationen finden Sie unter Manuelle Installation .

Informationen zum Installieren der richtigen Version finden Sie in der RabbitMQ/Erlang-Versionsmatrix .

Installieren Sie RabbitMQ

Der RabbitMQ -Server ist in CentOS enthalten, aber die Version ist häufig alt. RabbitMQ empfiehlt die Installation des Pakets von seiner Website aus.

Die neueste unterstützte Version finden Sie auf der Seite RabbitMQ install . Adobe Commerce 2.3 und 2.4 unterstützen RabbitMQ 3.8.x.

Weitere Informationen finden Sie unter Installieren auf RPM-basiertem Linux .

Konfigurieren von RabbitMQ

Lesen Sie die offizielle RabbitMQ Dokumentation, um RabbitMQ zu konfigurieren und zu verwalten. Beachten Sie die folgenden Punkte:

  • Umgebungsvariablen
  • Port-Zugriff
  • Standardbenutzerkonten
  • Starten und Beenden des Brokers
  • Systembeschränkungen

Installieren mit RabbitMQ und Verbinden

Wenn Sie Adobe Commerce nach installieren, fügen Sie während der Installation die folgenden Befehlszeilenparameter hinzu:RabbitMQ

--amqp-host="<hostname>" --amqp-port="5672" --amqp-user="<user_name>" --amqp-password="<password>" --amqp-virtualhost="/"

Dabei gilt:

Parameter
Beschreibung
--amqp-host
Der Hostname, auf dem RabbitMQ installiert ist.
--amqp-port
Der Anschluss, über den eine Verbindung zu RabbitMQ hergestellt werden soll. Der Standardwert ist 5672.
--amqp-user
Der Benutzername für die Verbindung mit RabbitMQ. Verwenden Sie nicht den Standardbenutzer guest.
--amqp-password
Das Kennwort für die Verbindung mit RabbitMQ. Verwenden Sie nicht das Standardkennwort guest.
--amqp-virtualhost
Der virtuelle Host für die Verbindung mit RabbitMQ. Der Standardwert ist /.
--amqp-ssl
Gibt an, ob eine Verbindung zu RabbitMQ hergestellt werden soll. Der Standardwert ist false. Wenn Sie den Wert auf "true"setzen, finden Sie weitere Informationen unter SSL konfigurieren .

RabbitMQ verbinden

Wenn Sie Adobe Commerce bereits installiert haben und eine Verbindung mit RabbitMQ herstellen möchten, fügen Sie in der Datei <install_directory>/app/etc/env.php den Abschnitt queue hinzu, damit er dem folgenden ähnelt:

'queue' =>
  array (
    'amqp' =>
    array (
      'host' => 'rabbitmq.example.com',
      'port' => '11213',
      'user' => 'magento',
      'password' => 'magento',
      'virtualhost' => '/'
     ),
  ),

Sie können auch RabbitMQ -Konfigurationswerte mithilfe des Befehls bin/magento setup:config:set festlegen:

bin/magento setup:config:set --amqp-host="rabbitmq.example.com" --amqp-port="11213" --amqp-user="magento" --amqp-password="magento" --amqp-virtualhost="/"

Führen Sie nach dem Ausführen des Befehls oder Aktualisieren der <install_directory>/app/etc/env.php-Datei mit AMQP-Konfigurationswerten bin/magento setup:upgrade aus, um die Änderungen anzuwenden und die erforderlichen Warteschlangen und Austausche in RabbitMQ zu erstellen.

SSL konfigurieren

Um die Unterstützung für SSL zu konfigurieren, bearbeiten Sie die Parameter ssl und ssl_options in der Datei <install_directory>/app/etc/env.php , sodass sie den folgenden ähneln:

'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'
       ],
     ),
  ),

Starten der Verbraucher in der Nachrichtenwarteschlange

Nachdem Sie Adobe Commerce und RabbitMQ verbunden haben, müssen Sie die Verbraucher in der Nachrichtenwarteschlange starten. Weitere Informationen finden Sie unter Konfigurieren von Nachrichtenwarteschlangen .

recommendation-more-help
0f8e7db5-0e9c-4002-a5b8-a0088077d995