GNU/Linux >> Znalost Linux >  >> Linux

Konfigurace Magento 2 Rabbitmq

Úvod

V listopadu 2018 aktualizace Magento 2.3.0 v tichosti představila integraci s nástrojem pro správu fronty zpráv RabbitMQ. Nová funkce otevřela výkonné možnosti optimalizace pro Magento 2 Commerce i Open Source edice.

Nedávno jsme mluvili o instalaci a konfiguraci RabbitMQ. Nyní vám ukážeme, jak nakonfigurovat Rabbitmq a používat jej na nainstalované instanci Magento 2.

Výhody

Hlavní výhodou používání RabbitMQ je možnost snížit zatížení serveru ve špičce ukládáním dat na zprostředkovatele zpráv. Před 2.3.0 byly pro tyto účely používány pouze MySQL a cron. Ale nyní můžeme použít Rabbitmq, který může urychlit váš aktuální obchod snížením zatížení databáze MySQL.

Instalace Rabbitmq

Instalace Rabbitmq je popsána v našem článku Instalace a konfigurace RabbitMQ. Které lze použít k instalaci RabbitMQ na váš server Ubuntu nebo CentOS.

Konfigurace Rabbitmq

1. Nejprve je třeba odebrat hostujícího uživatele:

# rabbitmqctl delete_user guest

2. Poté budeme muset vytvořit uživatele s potřebnými oprávněními.

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

3. Také musíme vytvořit frontu:

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

To je vše, rabbitmq je připraven k použití. Od této chvíle můžeme začít konfigurovat Magento tak, aby jej používal.

Konfigurace Magento

Nejprve musíme přidat konfiguraci rabbitmq. Lze to provést dvěma způsoby:

Via 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="/"

Úpravou app/etc/env.php pomocí následujících řádků

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

Také budete muset přidat cron runner do app/etc/env.php:

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

To je vše. Úspěšně jsme nakonfigurovali spotřebitele rabbitmq v Magento.

Testování rabbitmq spotřebitele na Magento

Chcete-li zobrazit seznam všech spotřebitelů, můžete spustit příkaz:

# php bin/magento queue:consumers:list

Chcete-li spustit spotřebitele, musíte spustit následující příkaz:

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

To je vše. Spotřebitel by měl nyní fungovat!

Závěr

RabbitMQ je výkonný zprostředkovatel zpráv, který může pomoci zlepšit rychlost vašeho obchodu. Také bude užitečné snížit zatížení vašeho serveru MySQL, což může být užitečné při špičkách zatížení.


Linux
  1. „xterm“ nebo „xterm“ v konfiguračním souboru?

  2. Jak na to:Replikace a konfigurace DRBD

  3. Zakázat režim údržby v Magento

  1. Čištění protokolů Magento

  2. Ověřte konfiguraci dnsmasq

  3. mdadm:Konfigurace disku pomocí UUID

  1. Konfigurační soubor databáze Magento 2

  2. Zálohovat konfigurační soubory

  3. Jednoduchý příklad auditované konfigurace?