GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Magento 2 Rabbitmq-Konfiguration

Einführung

Im November 2018 führte das Magento 2.3.0-Update stillschweigend die Integration mit dem Nachrichtenwarteschlangen-Verwaltungstool RabbitMQ ein. Die neue Funktion eröffnete leistungsstarke Optimierungsoptionen sowohl für die Magento 2 Commerce- als auch für die Open Source-Edition.

Kürzlich haben wir über die Installation und Konfiguration von RabbitMQ gesprochen. Jetzt zeigen wir Ihnen, wie Sie Rabbitmq konfigurieren und auf der installierten Magento 2-Instanz verwenden.

Vorteile

Der Hauptvorteil der Verwendung von RabbitMQ ist die Möglichkeit, die Belastung des Servers während der Stoßzeiten zu verringern, indem Daten auf dem Message Broker gespeichert werden. Vor 2.3.0 wurden für diese Zwecke nur MySQL und Cron verwendet. Aber jetzt können wir Rabbitmq verwenden, das Ihren aktuellen Shop beschleunigen kann, indem es die Belastung der MySQL-Datenbank verringert.

Rabbitmq-Installation

Die Rabbitmq-Installation wird in unserem Artikel RabbitMQ-Installation und -Konfiguration beschrieben. Damit kann RabbitMQ auf Ihrem Ubuntu- oder CentOS-Server installiert werden.

Rabbitmq-Konfiguration

1. Zuerst müssen Sie den Gastbenutzer entfernen:

# rabbitmqctl delete_user guest

2. Danach müssen wir einen Benutzer mit den erforderlichen Berechtigungen erstellen.

# rabbitmqctl add_user rabbitmq rabbitmq_pwd
# rabbitmqctl set_user_tags rabbitmq administrator
# rabbitmqctl set_permissions -p / rabbitmq ".*" ".*" ".*"

3. Außerdem müssen wir eine Warteschlange erstellen:

# rabbitmqadmin --username=rabbitmq --password=rabbitmq_pwd declare queue --vhost=/ name=async.operations.all durable=true

Das ist alles, rabbitmq ist einsatzbereit. Ab sofort können wir damit beginnen, Magento für die Verwendung zu konfigurieren.

Magento-Konfiguration

Zunächst müssen wir die Rabbitmq-Konfiguration hinzufügen. Es gibt zwei Möglichkeiten:

Über bin/magento

$ php bin/magento setup:config:set --amqp-host="127.0.0.1" --amqp-port="5672" --amqp-user="rabbitmq" --amqp-password="rabbitmq_pwd" --amqp-virtualhost="/"

Durch Bearbeiten von app/etc/env.php mit den folgenden Zeilen

'queue' =>
  array (
    'amqp' =>
    array (
      'host' => '127.0.0.1',
      'port' => '5672',
      'user' => 'rabbitmq',
      'password' => 'rabbitmq_pwd',
      'virtualhost' => '/'
     ),
  ),

Außerdem müssen Sie den Cron-Runner zu app/etc/env.php hinzufügen:

'cron_consumers_runner' => [
  'cron_run' => true,
  'max_messages' => 0,
  'consumers' => [
    'async.operations.all',
    'codegeneratorProcessor'
  ]
]

Das ist alles. Wir haben den Rabbitmq-Verbraucher erfolgreich in Magento konfiguriert.

Kaninchenmq-Verbraucher auf Magento testen

Um alle Verbraucher aufzulisten, können Sie folgenden Befehl ausführen:

# php bin/magento queue:consumers:list

Um den Verbraucher auszuführen, müssen Sie den folgenden Befehl ausführen:

# php bin/magento  queue:consumers:start  async.operations.all

Das ist alles. Der Verbraucher sollte jetzt funktionieren!

Schlussfolgerung

RabbitMQ ist ein leistungsstarker Nachrichtenbroker, der Ihnen helfen kann, die Geschwindigkeit Ihres Geschäfts zu verbessern. Außerdem ist es hilfreich, die Last auf Ihrem MySQL-Server zu verringern, was bei Lastspitzen hilfreich sein kann.


Linux
  1. Magento-Protokolle bereinigen

  2. Magento 2-Datenbankkonfigurationsdatei

  3. „xterm“ oder „xterm“ in der Konfigurationsdatei?

  4. Überprüfen Sie die dnsmasq-Konfiguration

  5. mdadm:Festplattenkonfiguration nach UUID

Härtung der SSH-Konfiguration

Usermin-Konfiguration

Webmin-Konfiguration

PHP-Konfiguration

Netzwerkkonfiguration

Wie installiere ich Magento 2.x im cPanel?