GNU/Linux >> Linux Esercitazione >  >> Linux

Configurazione Magento 2 Rabbitmq

Introduzione

Nel novembre 2018, l'aggiornamento Magento 2.3.0 ha introdotto silenziosamente l'integrazione con lo strumento di gestione delle code di messaggi RabbitMQ. La nuova funzionalità ha aperto potenti opzioni di ottimizzazione per entrambe le edizioni Magento 2 Commerce e Open Source.

Di recente, abbiamo parlato dell'installazione e della configurazione di RabbitMQ. Ora ti mostreremo come configurare Rabbitmq e usarlo sull'istanza Magento 2 installata.

Vantaggi

Il vantaggio principale dell'utilizzo di RabbitMQ è la possibilità di ridurre il carico sul server durante le ore di punta archiviando i dati sul broker di messaggi. Prima della 2.3.0 solo MySQL e cron venivano usati per questi scopi. Ma ora possiamo usare Rabbitmq che può velocizzare il tuo negozio attuale diminuendo il carico sul database MySQL.

Installazione Rabbitmq

L'installazione di Rabbitmq è descritta nel nostro articolo Installazione e configurazione di RabbitMQ. Che può essere utilizzato per installare RabbitMQ sul tuo server Ubuntu o CentOS.

Configurazione Rabbitmq

1. Prima di tutto è necessario rimuovere l'utente ospite:

# rabbitmqctl delete_user guest

2. Successivamente dovremo creare un utente con le autorizzazioni necessarie.

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

3. Inoltre, dobbiamo creare una coda:

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

Questo è tutto, rabbitmq è pronto per l'uso. Da ora, possiamo iniziare a configurare Magento per usarlo.

Configurazione Magento

Prima di tutto, dobbiamo aggiungere la configurazione di rabbitmq. Può essere fatto in 2 modi:

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

Modificando app/etc/env.php con le seguenti righe

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

Inoltre, dovrai aggiungere cron runner ad app/etc/env.php:

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

È tutto. Abbiamo configurato con successo rabbitmq consumer in Magento.

Test di rabbitmq consumer su Magento

Per elencare tutti i consumatori puoi eseguire il comando:

# php bin/magento queue:consumers:list

Per eseguire consumer è necessario eseguire il seguente comando:

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

È tutto. Il consumatore dovrebbe lavorare ora!

Conclusione

RabbitMQ è un potente broker di messaggi che può aiutarti a migliorare la velocità del tuo negozio. Inoltre, sarà utile ridurre il carico sul server MySQL, il che può essere utile durante i picchi di carico.


Linux
  1. File di configurazione del database Magento 2

  2. File di configurazione di backup

  3. Procedura:replica e configurazione DRBD

  4. Disabilita la modalità di manutenzione in Magento

  5. Verificare la configurazione di dnsmasq

Rafforzamento della configurazione SSH

Configurazione utente min

Configurazione Webmin

Configurazione PHP

Configurazione di rete

Come installare Magento 2.x in cPanel?