Installieren der Adobe Commerce B2B
Die Adobe Commerce B2B-Erweiterung magento/extension-b2b
ist für alle unterstützten Versionen von Adobe Commerce verfügbar. Sie wird nach der Installation von Adobe Commerce installiert.
Anforderungen
- Adobe Commerce, alle unterstützten Versionen
- PHP 8.1 und 8.2
- Composer
Unterstützte Plattformen
- Adobe Commerce auf Cloud-Infrastruktur (ECE)
- Adobe Commerce On-Premises (EE)
Installationsschritte
Voraussetzungen
-
Zugriff auf repo.magento.com zum Herunterladen der Erweiterung. Informationen zum Generieren von Schlüsseln und zum Abrufen der erforderlichen Berechtigungen finden Sie unter Abrufen Ihrer Authentifizierungsschlüssel.
Speichern Sie Authentifizierungsschlüssel für die Installation, indem Sie sie global im Verzeichnis COMPOSER_HOME definieren. Oder speichern Sie sie in einer auth.json-Datei im Stammverzeichnis der Adobe Commerce-Anwendung.
-
Unterstützte Version der B2B-Erweiterung - Ermitteln Sie die neueste Version der B2B-Erweiterung, die von der bereitgestellten Adobe Commerce-Version unterstützt wird.
-
In den Versionshinweisen finden Sie die neuesten Informationen zur Versionskompatibilität, zu Updates oder Änderungen, die sich auf Installations- oder Upgrade-Anforderungen auswirken können.
Installieren Sie die B2B-Erweiterung (magento/b2b-extension
) mit dem Composer. Die -Erweiterung ist ein Composer-Metapaket, das die Auflistung von -Modulen enthält, die die B2B-Funktionen für eine Adobe Commerce-Instanz aktivieren. Eine Liste der enthaltenen Module finden Sie unter B2B-.
note tip |
---|
TIP |
Bei der Installation von Adobe Commerce B2B auf einer Cloud-Infrastruktur empfiehlt Adobe, Ihre Adobe Commerce-Anwendung in einer Integrations- oder Staging-Umgebung bereitzustellen, bevor Sie beginnen. |
Adobe empfiehlt, in einer Entwicklungsverzweigung zu arbeiten, wenn Sie Ihrem Projekt die B2B-Erweiterung hinzufügen. Wenn Sie keine Verzweigung haben, lesen Sie Erstellen einer Verzweigung für die Entwicklung. Bei der Installation der B2B-Erweiterung wird der Name der Magento_B2b
-Erweiterung automatisch in die app/etc/config.php
-Datei eingefügt. Es ist nicht erforderlich, die Datei direkt zu bearbeiten.
So installieren Sie die B2B-:
-
Wechseln Sie auf Ihrer lokalen Workstation in Ihr Projektverzeichnis.
-
Erstellen oder Auschecken einer Entwicklungsverzweigung.
-
Fügen Sie die B2B-Erweiterung zum Abschnitt
require
dercomposer.json
hinzu.code language-bash composer require magento/extension-b2b --no-update
-
Aktualisieren Sie die Projektabhängigkeiten.
code language-bash composer update
-
Code-Änderungen hinzufügen, übertragen und per Push übertragen.
code language-bash git add -A
code language-bash git commit -m "Install the B2B extension."
code language-bash git push origin <branch-name>
note note NOTE Durch das Pushen von Aktualisierungen an die Cloud-Umgebung wird der Commerce-Cloud-Bereitstellungsprozess gestartet, um die Änderungen anzuwenden. Überprüfen Sie den Bereitstellungsstatus im Bereitstellungsprotokoll. Wenn Sie auf Bereitstellungsfehler stoßen, lesen Sie Nach Komponentenfehler wiederherstellen. -
Nachdem der Build und die Bereitstellung abgeschlossen sind, verwenden Sie SSH, um sich bei der Remote-Umgebung anzumelden und sicherzustellen, dass die B2B-Erweiterung installiert und aktiviert ist.
code language-bash bin/magento module:status Magento_B2b
Ein Erweiterungsname verwendet das Format
<VendorName>_<ComponentName>
.Beispielantwort:
code language-none Magento_B2b : Module is enabled
-
Aktualisieren Sie im Stammverzeichnis der Adobe Commerce-Anwendung die
composer.json
, um die Abhängigkeiten für die B2B-Erweiterung hinzuzufügen:code language-bash composer require magento/extension-b2b:<version>
Wenn ein Fehler auftritt, zum Beispiel:
code language-none [InvalidArgumentException] Could not find a matching version of package magento/extension-b2b.
Überprüfen Sie die Schreibweise des Pakets, Ihre Versionsbeschränkung und, ob das Paket verfügbar ist und Ihren Mindestanforderungen an die Stabilität (stabil) entspricht.
-
Geben Sie bei Aufforderung Ihre Authentifizierungsschlüssel ein.
Ihr öffentlicher Schlüssel ist Ihr Benutzername; Ihr privater Schlüssel ist Ihr Kennwort. Wenn Sie Ihre öffentlichen und privaten Schlüssel in
auth.json
gespeichert haben, werden Sie nicht aufgefordert, sich zu authentifizieren. -
Führen Sie die folgenden Befehle aus, nachdem Composer die Aktualisierung der Module abgeschlossen hat:
code language-bash bin/magento setup:upgrade
code language-bash bin/magento setup:di:compile
code language-bash bin/magento setup:static-content:deploy -f
code language-bash bin/magento cache:clean
note note NOTE Im Produktionsmodus erhalten Sie möglicherweise eine Nachricht an Please rerun Magento compile command
. Geben Sie die Befehle ein, um die Installation abzuschließen. Adobe Commerce fordert Sie nicht auf, den Kompilierungsbefehl im Entwicklermodus auszuführen.
Konfigurieren und starten Sie nach Abschluss der Installation Message Consumer.
Nachrichtenkonsumenten
Die Adobe Commerce B2B-Erweiterung verwendet MySQL für die Verwaltung von Nachrichtenwarteschlangen. In der folgenden Tabelle sind die Nachrichtenkonsumenten aufgeführt, die B2B-Funktionen unterstützen. Starten Sie nach der Installation der Erweiterung die Nachricht Consumer für die B2B-Funktionen, die für Ihre Commerce-Storefront erforderlich sind.
sharedCatalogUpdatePrice
sharedCatalogUpdateCategoryPermissions
negotiableQuotePriceUpdate
purchaseorder.toorder
purchaseorder.transactional.email
purchaseorder.validation
quoteItemCleaner
inventoryQtyCounter
async.operations.all
Konfigurieren von Nachrichtenkonsumenten
Vermeiden Sie mögliche Verarbeitungsprobleme oder -verzögerungen, indem Sie die folgenden Parameter hinzufügen, wenn Sie die Nachrichten-Consumer starten für B2B-Funktionen.
-
--max-messages <value>
- Gibt die maximale Anzahl an Nachrichten an, die jeder Consumer vor dem Beenden verarbeiten muss (Standard = 10000). Obwohl das Adobe nicht empfohlen wird, können Sie 0 verwenden, um zu verhindern, dass der Verbraucher beendet. Die Best Practice für eine PHP-Anwendung besteht darin, langwierige Prozesse neu zu starten, um mögliche Speicherlecks zu vermeiden. -
--batch-size <value>
- Ermöglicht es Ihnen, die von den Verbrauchern verbrauchten Systemressourcen (CPU, Speicher) zu begrenzen. Die Verwendung kleinerer Batches reduziert die Ressourcennutzung und führt daher zu einer langsameren Verarbeitung. Wenn angegeben, werden Nachrichten in einer Warteschlange in Batches von jeweils<value>
. Diese Option gilt nur für den Batch-Verbraucher. Wenn--batch-size
nicht definiert ist, erhält der Batch-Benutzer alle verfügbaren Nachrichten in einer Warteschlange.
Weitere Informationen zu zusätzlichen Konfigurationsoptionen finden Sie unter Specific-configuration.
Nachrichtenkonsumenten starten
Um asynchrone Vorgänge für B2B-Funktionen zu aktivieren, müssen Sie mehrere Nachrichten-Consumer starten.
-
Auflisten der verfügbaren Nachrichtenbenutzer:
code language-bash bin/magento queue:consumers:list
Der Befehl gibt verfügbare Nachrichtenverbraucher zurück, einschließlich aller B2B-Nachrichtenverbraucher.
-
Jeden Verbraucher separat starten:
code language-bash bin/magento queue:consumers:start [--max-messages=<value>] [--batch-size=<value>] <consumer_name>
Beispiel:
code language-bash bin/magento queue:consumers:start quoteItemCleaner
&
an den Befehl an, kehren zu einer Eingabeaufforderung zurück und führen Sie die Befehle weiter aus. Beispiel: bin/magento queue:consumers:start sharedCatalogUpdatePrice &
.Weitere Informationen finden Sie unter Verwalten von Nachrichtenwarteschlangen im Konfigurationshandbuch.
Hinzufügen von Nachrichtenkonsumenten zu Cron
Sie können den Ausführungsplan für die SharedCatalogUpdateCategoryPermissions
- und SharedCatalogUpdatePrice
automatisieren, indem Sie den Zeitplan zur Cron-Konfigurationsdatei /app/code/Magento/MessageQueue/etc/crontab.xml hinzufügen.
* * * * * 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 &
Sie können Zeitpläne für Nachrichtenbenutzer auch über die Store-Konfigurationseinstellungen im Admin-Bereich konfigurieren.
Aktivieren von B2B-Funktionen in Admin
Nach der Installation der Adobe Commerce B2B-Erweiterung und dem Start der Nachrichtenbenutzer müssen Sie auch B2B-Funktionen in Admin aktivieren.