Instalar a extensão Adobe Commerce B2B
A extensão B2B do Adobe Commerce magento/extension-b2b está disponível para todas as versões do Adobe Commerce com suporte. Ele é instalado após a instalação do Adobe Commerce.
Requisitos
- Adobe Commerce, todas as versões com suporte
- PHP 8.1, 8.2 e 8.3 (requer B2B 1.5.0)
- Composer
Plataformas compatíveis
- Adobe Commerce na infraestrutura em nuvem (ECE)
- Adobe Commerce no local (EE)
Etapas de instalação
Pré-requisitos
-
Acesse repo.magento.com para baixar a extensão. Para geração de chaves e obtenção dos direitos necessários, consulte Obter suas chaves de autenticação.
Salve as chaves de autenticação para instalação definindo-as globalmente no diretório COMPOSER_HOME. Ou salve-os em um arquivo auth.json no diretório raiz do aplicativo Adobe Commerce.
-
Versão com suporte da extensão B2B-Determine a versão mais recente da extensão B2B com suporte na versão do Adobe Commerce implantada.
-
Verifique as notas de versão para obter as informações mais atuais sobre compatibilidade de versão, atualizações ou alterações que podem afetar os requisitos de instalação ou atualização.
Instale a extensão B2B (magento/b2b-extension) usando o Composer. A extensão é um metapackage de compositor que inclui a coleção de módulos que habilitam os recursos B2B para uma instância do Adobe Commerce. Para obter uma lista de módulos incluídos, consulte Pacotes B2B.
| note tip |
|---|
| TIP |
| Ao instalar o Adobe Commerce B2B na infraestrutura em nuvem, a Adobe recomenda que você implante seu aplicativo do Adobe Commerce em uma integração ou ambiente de preparo antes de começar. |
A Adobe recomenda trabalhar em uma ramificação de desenvolvimento ao adicionar a extensão B2B ao projeto. Se você não tiver uma ramificação, consulte Criar uma ramificação para desenvolvimento. Ao instalar a extensão B2B, o nome da extensão Magento_B2b é inserido automaticamente no arquivo app/etc/config.php. Não há necessidade de editar o arquivo diretamente.
Para instalar a extensão B2B:
-
Na estação de trabalho local, altere para o diretório do projeto.
-
Criar ou dar baixa em uma ramificação de desenvolvimento.
-
Adicione a extensão B2B à seção
requiredo arquivocomposer.json.code language-bash composer require magento/extension-b2b --no-update -
Atualize as dependências do projeto.
code language-bash composer update -
Adicionar, confirmar e enviar alterações de código.
code language-bash git add -Acode language-bash git commit -m "Install the B2B extension."code language-bash git push origin <branch-name>note note NOTE Enviar atualizações para o ambiente de nuvem inicia o processo de implantação da nuvem do Commerce para aplicar as alterações. Verifique o status da implantação no log de implantação. Se você encontrar erros de implantação, consulte Recuperar de falha de componente. -
Após a conclusão da build e implantação, use o SSH para fazer logon no ambiente remoto e verificar se a extensão B2B está instalada e ativada.
code language-bash bin/magento module:status Magento_B2bUm nome de extensão usa o formato:
<VendorName>_<ComponentName>.Exemplo de resposta:
code language-none Magento_B2b : Module is enabled
-
No diretório raiz do aplicativo Adobe Commerce, atualize o
composer.jsonpara adicionar as dependências da extensão B2B:code language-bash composer require magento/extension-b2b:<version>Se ocorrer um erro, por exemplo:
code language-none [InvalidArgumentException] Could not find a matching version of package magento/extension-b2b.Verifique a ortografia do pacote, a restrição de versão e se o pacote está disponível e corresponde ao requisito de estabilidade mínima (estável).
-
Se solicitado, insira suas chaves de autenticação.
Sua chave pública é seu nome de usuário; sua chave privada é sua senha. Se você tiver armazenado suas chaves públicas e privadas no
auth.json, não será solicitado a autenticar. -
Execute os seguintes comandos depois que o Composer terminar de atualizar os módulos:
code language-bash bin/magento setup:upgradecode language-bash bin/magento setup:di:compilecode language-bash bin/magento setup:static-content:deploy -fcode language-bash bin/magento cache:cleannote note NOTE No modo de Produção, você pode receber uma mensagem para Please rerun Magento compile command. Digite os comandos para concluir a instalação. A Adobe Commerce não solicita que você execute o comando compilar no modo de Desenvolvedor.
Após concluir a instalação, configure e inicie os consumidores de mensagens.
Consumidores de mensagens
A extensão B2B do Adobe Commerce usa MySQL para gerenciamento de fila de mensagens. A tabela a seguir lista os consumidores de mensagem que oferecem suporte aos recursos B2B. Depois de instalar a extensão, inicie os consumidores de mensagem para os recursos B2B necessários para sua loja da Commerce.
sharedCatalogUpdatePricesharedCatalogUpdateCategoryPermissionsnegotiableQuotePriceUpdatepurchaseorder.toorderpurchaseorder.transactional.emailpurchaseorder.validationquoteItemCleanerinventoryQtyCounterasync.operations.allConfigurar consumidores de mensagem
Evite possíveis problemas de processamento ou atrasos adicionando os seguintes parâmetros quando você iniciar os consumidores de mensagens para recursos B2B.
-
--max-messages <value>— Especifica o número máximo de mensagens que cada consumidor deve processar antes de terminar (padrão = 10000). Embora a Adobe não o recomende, você pode usar 0 para impedir que o consumidor encerre. A prática recomendada para um aplicativo PHP é reiniciar processos de longa execução para evitar possíveis vazamentos de memória. -
--batch-size <value>— Permite limitar os recursos do sistema consumidos pelos consumidores (CPU, memória). Usar lotes menores reduz o uso de recursos e, portanto, resulta em um processamento mais lento. Se especificado, as mensagens em uma fila serão consumidas em lotes de<value>cada. Essa opção é aplicável somente para o consumidor do lote. Se--batch-sizenão estiver definido, o consumidor do lote receberá todas as mensagens disponíveis em uma fila.
Para obter informações sobre opções de configuração adicionais, consulte Configuração-específica.
Iniciar consumidores de mensagem
Para habilitar operações assíncronas para recursos B2B, você deve iniciar vários consumidores de mensagem.
-
Listar os consumidores de mensagem disponíveis:
code language-bash bin/magento queue:consumers:listO comando retorna os consumidores de mensagens disponíveis, incluindo todos os consumidores de mensagens B2B.
-
Inicie cada consumidor separadamente:
code language-bash bin/magento queue:consumers:start [--max-messages=<value>] [--batch-size=<value>] <consumer_name>Por exemplo:
code language-bash bin/magento queue:consumers:start quoteItemCleaner
& ao comando, retorne a um prompt e continue executando os comandos. Por exemplo: bin/magento queue:consumers:start sharedCatalogUpdatePrice &.Para obter mais informações, consulte Gerenciar filas de mensagens no Guia de Configuração.
Adicionar consumidores de mensagem ao cron
Você pode automatizar o agendamento de execução para os consumidores de mensagens SharedCatalogUpdateCategoryPermissions e SharedCatalogUpdatePrice adicionando o agendamento ao arquivo de configuração cron /app/code/Magento/MessageQueue/etc/crontab.xml.
* * * * * ps ax | grep [s]haredCatalogUpdateCategoryPermissions >>/dev/null 2>&1 || nohup php /var/www/html/magento2/bin/magento queue:consumers:start sharedCatalogUpdateCategoryPermissions &
* * * * * ps ax | grep [s]haredCatalogUpdatePrice >>/dev/null 2>&1 || nohup php /var/www/html/magento2/bin/magento queue:consumers:start sharedCatalogUpdatePrice &
Você também pode definir agendas para consumidores de mensagens nas Configurações de armazenamento em Admin.
Habilitar recursos B2B no Administrador
Depois de instalar a extensão B2B do Adobe Commerce e iniciar os consumidores de mensagens, você também deve habilitar os recursos B2B no Administrador.