Starterarchitektur
Ihre Adobe Commerce on Cloud Infrastructure Starter-Architektur unterstützt bis zu vier Umgebungen, einschließlich master
Umgebung, die den anfänglichen Projektcode, die Staging-Umgebung und bis zu zwei Integrationsumgebungen enthält.
Alle Umgebungen befinden sich in PaaS-Containern (Platform as a Service). Diese Container werden in stark eingeschränkten Containern auf einem Serverraster bereitgestellt. Diese Umgebungen sind schreibgeschützt und akzeptieren bereitgestellte Codeänderungen aus Verzweigungen, die von Ihrem lokalen Arbeitsbereich aus gesendet werden. Jede Umgebung stellt eine Datenbank und einen Webserver bereit.
Sie können jede beliebige Entwicklungs- und Verzweigungsmethode verwenden. Wenn Sie anfänglichen Zugriff auf Ihr Projekt erhalten, erstellen Sie eine staging
-Umgebung aus master
Umgebung. Erstellen Sie dann die integration
Umgebung durch Verzweigung von staging
.
Architektur der Starterumgebung
Das folgende Diagramm zeigt die hierarchischen Beziehungen der Starter-Umgebungen.
Produktionsumgebung
Die Produktionsumgebung stellt den Quellcode für die Bereitstellung von Adobe Commerce in der Cloud-Infrastruktur bereit, in der Ihre öffentlich zugänglichen Storefronts mit einzelnen und mehreren Sites ausgeführt werden. Die Produktionsumgebung verwendet Code aus der master
-Verzweigung, um den Webserver, die Datenbank, die konfigurierten Dienste und Ihren Anwendungscode zu konfigurieren und zu aktivieren.
Da die production
-Umgebung schreibgeschützt ist, verwenden Sie die integration
-Umgebung, um Code-Änderungen vorzunehmen, stellen Sie sie in der gesamten Architektur über die integration
nach staging
und schließlich zum production
Umgebung. Siehe Bereitstellen Ihres Stores und Site-Launch.
Adobe empfiehlt vollständige Tests in Ihrem staging
Verzweigung vor dem Verschieben master
-Verzweigung, die für die production
Umgebung.
Staging-Umgebung
Adobe empfiehlt die Erstellung einer Verzweigung mit dem Namen staging
von master
. Die staging
-Verzweigung stellt Code in der Staging-Umgebung bereit, um eine Umgebung vor der Produktion bereitzustellen, in der Code, Module und Erweiterungen, Zahlungskanäle, Versand, Produktdaten und vieles mehr getestet werden können. Diese Umgebung bietet die Konfiguration für alle Dienste, die mit der Produktionsumgebung übereinstimmen, einschließlich Fastly, New Relic APM und Suche.
Weitere Abschnitte in diesem Handbuch enthalten Anweisungen für endgültige Code-Bereitstellungen und zum Testen von Interaktionen auf Produktionsebene in einer sicheren Staging-Umgebung. Für optimale Leistung und Funktionstests replizieren Sie Ihre Datenbank in der Staging-Umgebung.
Integrationsumgebung
Entwickler verwenden die integration
Umgebung zum Entwickeln, Bereitstellen und Testen:
-
Adobe Commerce-Anwendungscode
-
Benutzerspezifischer Code
-
Erweiterungen
-
Dienste
Empfohlene Anwendungsfälle:
Integrationsumgebungen sind für begrenzte Tests und Entwicklung ausgelegt. Beispielsweise können Sie die Integrationsumgebung verwenden, um die folgenden Aufgaben auszuführen:
-
Sicherstellen, dass Änderungen an CI-Prozessen (Continuous Integration) Cloud-kompatibel sind
-
Testen Sie kritische Workflows auf wichtigen Seiten wie Startseite, Kategorie, Produktdetailseite (PDP), Checkout und Admin
Befolgen Sie die folgenden Best Practices, um eine optimale Leistung in der Integrationsumgebung zu erzielen:
-
Eingrenzen der Kataloggröße
-
Beschränkung der Verwendung auf einen oder zwei gleichzeitige Benutzer
-
Deaktivieren Sie Cron-Aufträge und führen Sie sie nach Bedarf manuell aus.
Sie können two aktive Integrationsumgebungen. Sie erstellen eine Integrationsumgebung, indem Sie eine Verzweigung aus dem staging
-Verzweigung. Wenn Sie eine Integrationsumgebung erstellen, entspricht der Umgebungsname dem Zweignamen. Eine Integrationsumgebung umfasst einen Webserver und eine Datenbank. Sie umfasst nicht alle Dienste, z. B. Fastly CDN und New Relic sind nicht verfügbar.
Sie können eine unbegrenzte Anzahl von inaktiven Verzweigungen für die Codespeicherung haben. Um auf einen inaktiven Zweig zuzugreifen, ihn anzuzeigen und zu testen, müssen Sie ihn aktivieren
Staging- und Produktions- und Staging-Technologie-Stack
Die Produktions- und Staging-Umgebungen umfassen die folgenden Technologien. Sie können diese Technologien über die .magento.app.yaml
-Datei.
- Schnelles HTTP-Caching und CDN
- Nginx-Webserver, der mit PHP-FPM spricht, eine Instanz mit mehreren Arbeitern
- Redis-Server
- Elasticsearch für die Katalogsuche für Adobe Commerce 2.2 bis 2.4.3-p2
- OpenSearch für die Katalogsuche nach Adobe Commerce 2.3.7-p3, 2.4.3-p2 und 2.4.4 und höher
- Ausgehend-Filter (ausgehende Firewall)
Dienste
Adobe Commerce on Cloud Infrastructure unterstützt derzeit die folgenden Dienste: PHP, MySQL (MariaDB), Elasticsearch (Adobe Commerce 2.2 bis 2.4.3-p2), OpenSearch (2.3.7-p3, 2.4.3-p2, 2.4.4 und höher), Redis und RabbitMQ.
Jeder Dienst wird in einem separaten, sicheren Container ausgeführt. Container werden im Projekt gemeinsam verwaltet. Einige Dienste sind Standard, z. B.:
-
HTTP-Router (Verarbeitung eingehender Anfragen, aber auch Zwischenspeicherung und Umleitungen)
-
PHP-Anwendungsserver
-
Git
-
Secure Shell (SSH)
Softwareversionen
Adobe Commerce auf Cloud-Infrastruktur verwendet das Debian GNU/Linux-Betriebssystem und den NGINX-Webserver. Sie können diese Software nicht aktualisieren, Sie können jedoch Versionen für Folgendes konfigurieren:
In den Staging- und Produktionsumgebungen verwenden Sie Fastly für CDN und Caching. Die neueste Version der Fastly CDN-Erweiterung wird während der ersten Bereitstellung Ihres Projekts installiert. Sie können die Erweiterung aktualisieren, um die neuesten Fehlerbehebungen und Verbesserungen zu erhalten. Siehe Fastly CDN-Modul für Magento 2. Außerdem haben Sie Zugriff auf New Relic für die Leistungsüberwachung.
Verwenden Sie die folgenden Dateien, um die Softwareversionen zu konfigurieren, die Sie in Ihrer Implementierung verwenden möchten.
Sicherung und Wiederherstellung nach Katastrophen
Sie können eine Sicherung Ihrer Datenbank und Ihres Dateisystems mithilfe der Variablen Cloud Console oder die CLI. Siehe Backup-Management.
Vorbereitungen für die Entwicklung
Der folgende Workflow fasst den Prozess zur Verzweigung Ihres Codes, Entwicklung und Bereitstellung Ihres Stores zusammen:
-
Lokale Umgebung einrichten
-
Klonen Sie die
master
Verzweigung in der lokalen Umgebung -
Erstellen Sie eine
staging
Verzweigung ausmaster
-
Erstellen von Zweigen für die Entwicklung aus
staging
-
Push-Code an Git, der erstellt und in einer Umgebung zum Testen bereitgestellt wird
In den folgenden Abschnitten finden Sie ausführliche Anweisungen und schrittweise Anleitungen zum Entwickeln, Testen und Bereitstellen Ihres Stores:
-
Workflow für die Entwicklung und Bereitstellung von Startern
-
Docker-Entwicklung (lokale Entwicklungsumgebung aktiviert durch Cloud Docker für Commerce)