Agente de mensagens

O Adobe Commerce usa o agente de mensagens de código aberto RabbitMQ. Ele oferece um sistema de mensagens confiável, altamente disponível, escalável e portátil.

As filas de mensagens fornecem um mecanismo de comunicação assíncrono no qual o remetente e o destinatário de uma mensagem não entram em contato entre si. Eles também não precisam se comunicar com a fila de mensagens ao mesmo tempo. Quando um remetente coloca uma mensagem em uma fila, ela é armazenada até que o destinatário a receba.

O sistema de fila de mensagens deve ser estabelecido antes da instalação do Adobe Commerce. A sequência básica é:

  1. Instale o RabbitMQ e qualquer pré-requisito.
  2. Conectar RabbitMQ ao Adobe Commerce.
NOTE
Você pode usar MySQL ou RabbitMQ para processamento de fila de mensagens. Para obter detalhes sobre a configuração do sistema de fila de mensagens, consulte Visão geral das filas de mensagens. Se você estiver usando a API em massa com o Adobe Commerce, a configuração do sistema de fila de mensagens usa RabbitMQ como o agente de mensagens. Consulte Iniciar consumidores da fila de mensagens para obter mais informações.

Instalar o RabbitMQ no Ubuntu

Para instalar o RabbitMQ no Ubuntu 16, digite o seguinte comando:

sudo apt install -y rabbitmq-server

Este comando também instala os pacotes Erlang necessários.

Se você tiver uma versão mais antiga do Ubuntu, a RabbitMQ recomenda instalar o pacote de seu site.

  1. Baixe o pacote .deb de rabbitmq-server.
  2. Instalar o pacote com dpkg.

Consulte Instalando no Debian/Ubuntu para obter mais informações.

Instalar RabbitMQ no CentOS

Instalar Erlang

RabbitMQ foi gravado usando a linguagem de programação Erlang, que deve ser instalada no mesmo sistema que RabbitMQ.

Consulte Instalação manual para obter mais informações.

Consulte a RabbitMQ/Erlang version matrix para instalar a versão correta.

Instalar RabbitMQ

O servidor RabbitMQ está incluído no CentOS, mas a versão é frequentemente antiga. O RabbitMQ recomenda instalar o pacote de seu site.

Consulte a página de instalação RabbitMQ para obter a versão mais recente com suporte. O Adobe Commerce 2.3 e 2.4 são compatíveis com RabbitMQ 3.8.x.

Consulte Instalando no Linux baseado em RPM para obter mais informações.

Configurar RabbitMQ

Consulte a documentação oficial RabbitMQ para configurar e gerenciar RabbitMQ. Preste atenção aos seguintes itens:

  • Variáveis de ambiente
  • Acesso à porta
  • Contas de usuário padrão
  • Iniciando e interrompendo o agente
  • Limites do sistema

Instalar com RabbitMQ e conectar

Se você instalar o Adobe Commerce depois de instalar o RabbitMQ, adicione os seguintes parâmetros de linha de comando durante a instalação:

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

Onde:

Parâmetro
Descrição
--amqp-host
O nome do host em que RabbitMQ está instalado.
--amqp-port
A porta a ser usada para conexão com RabbitMQ. O padrão é 5672.
--amqp-user
O nome de usuário para conexão com RabbitMQ. Não usar o usuário padrão guest.
--amqp-password
A senha para conexão com RabbitMQ. Não usar a senha padrão guest.
--amqp-virtualhost
O host virtual para conexão com RabbitMQ. O padrão é /.
--amqp-ssl
Indica se é necessário conectar a RabbitMQ. O padrão é false. Se você definir o valor como true, consulte Configurar SSL para obter mais informações.

Conectar RabbitMQ

Se você já tiver o Adobe Commerce instalado e quiser conectá-lo ao RabbitMQ, adicione uma seção queue no arquivo <install_directory>/app/etc/env.php para que ela seja semelhante ao seguinte:

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

Você também pode definir valores de configuração RabbitMQ usando o 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="/"

Após executar o comando ou atualizar o arquivo <install_directory>/app/etc/env.php com valores de configuração AMQP, execute bin/magento setup:upgrade para aplicar as alterações e criar as filas e trocas necessárias em RabbitMQ.

Configurar SSL

Para configurar o suporte para SSL, edite os parâmetros ssl e ssl_options no arquivo <install_directory>/app/etc/env.php para que sejam semelhantes ao seguinte:

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

Iniciar os consumidores da fila de mensagens

Depois de conectar o Adobe Commerce e o RabbitMQ, você deve iniciar os consumidores da fila de mensagens. Consulte Configurar filas de mensagens para obter detalhes.

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