Connector-Synchronisierungs-Pipeline
Die auf SaaS Data Export basierende Adobe Commerce Optimizer Connector ordnet die von SaaS Data Export Indexern erfassten Daten dem Format zu, das für die Adobe Commerce Optimizer-Catalog Data Ingestion API erforderlich ist, und verarbeitet Authentifizierung, Batch-Übermittlung und bereichsbasierte Synchronisierungssteuerung. In den folgenden Abschnitten wird beschrieben, wie diese Synchronisierung funktioniert.
Verwandter Kontext:
-
Erfahren Sie mehr über den geschäftlichen Nutzen der Integration, die wichtigsten Funktionen und die Architektur im Commerce Optimizer Connector Überblick.
-
Informationen zu Modulpaketnamen, Feed-API-Endpunkten und Konfigurationsschlüsselpfaden finden Sie in der Connector-Referenz
Funktionsweise der Synchronisierung
Das folgende Diagramm zeigt die Datensynchronisation von Adobe Commerce zu Commerce Optimizer über die Adobe I/O Gateway.
Synchronisierungsdiagramm auf hoher Ebene für
Wenn sich Katalogdaten in Adobe Commerce ändern, durchläuft die Synchronisierung diese Phasen.
- Erkennung von Entitätsänderungen - (alle 1 Minute) Ein Cron-Auftrag (
indexer_reindex_all_invalid) erkennt, Adobe Commerce die Entität die SaaS Data Export ändert und Trigger, die Feed-Elemente zusammenstellt und deren Status verfolgt. - Transformation - Der Commerce Optimizer Connector nimmt die zusammengestellten Feeds auf, ordnet Adobe Commerce Entitäten und Bereiche den Formaten zu, die von der Commerce Optimizer-API benötigt werden, und bereitet die Payload für die Übertragung vor.
- Übertragung - Die umgewandelten Daten werden über HTTP POST (
/v1/catalog/<feed name>) über die Adobe I/O Gateway an Commerce Optimizer gesendet, wodurch die eingehenden Feeds validiert und beibehalten werden. - Fehlerwiederholung (alle 5 Minuten) - Ein separater Cron-Auftrag (
*_resend_failed_items) erkennt alle fehlgeschlagenen Feed-Elemente und sendet sie erneut über dieselbe Pipeline.
Geplante Cron-Aufträge
Zwei Cron-Gruppen automatisieren die Pipeline nach einem festen Zeitplan.
indexer_reindex_all_invalid*_resend_failed_itemsDie SaaS Data Export-Erweiterung verarbeitet die Feed-Erfassung und die Statusverfolgung. Die Connector-Ebene ordnet Entitäten und Bereiche dem Format zu, das für die Commerce Optimizer-API erforderlich ist, und übermittelt sie über POST /v1/catalog/<feed name>.
Anforderungen
- Commerce Cron muss ausgeführt werden.
- Feed-Indexer müssen den Update by Schedule verwenden. Siehe Überprüfen der Konfiguration von Commerce-.
Bereichsbasierte Synchronisierungssteuerung
Das CommerceOptimizerScopeMapper-Modul liest die Exporteinstellungen pro Website und pro Store-Ansicht und erzwingt sie bei der Erfassung und Übermittlung von Feeds.
- Aktivierte Bereiche exportieren Daten im normalen Delta-Zeitplan.
- Deaktivierte Bereiche werden aus der Pipeline ausgeschlossen.
Zuvor synchronisierte Entitäten werden bei der nächsten Cron-Ausführung aus Commerce Optimizer entfernt.
Wenn Synchronisierungsprobleme nur eine Katalogquelle oder ein Preisbuch betreffen, siehe Daten werden nicht synchronisiert.
Einzelheiten zum Anpassen des Synchronisierungsbereichs finden Sie unter Anpassen der Exportkonfiguration für Commerce-Bereiche.
Zeitplanung und Überwachung
Überwachen Sie den Status der einzelnen Feeds über die Seite Data Feed Sync Status in Commerce Admin. Siehe Überprüfen, ob die Datensynchronisation funktioniert.
Feed-Übermittlung und Fehlerbehandlung
Der FeedSubmitter verarbeitet Catalog Data Ingestion API.
- Trennt Aktualisierungselemente von Löschelementen (verschiedene API-Endpunkte).
- Aufrufe zum unabhängigen Aktualisieren und Löschen von Endpunkten.
- Führt die Statusergebnisse pro Element wieder in einer einzigen Antwort zusammen.
Zusammenführen von HTTP-Status-Code
Wenn update- und delete-Aufrufe unterschiedliche Status-Codes zurückgeben, kombiniert FeedSubmitter die Ergebnisse wie folgt.
errors aufgeführt sind, werden in der Admin-Liste angezeigt und müssen bearbeitet werden. Für andere Elemente im Batch wird ein erneuter Zustellversuch unternommen.*_feed_resend_failed_items Cron-Aufträge in der resync_failed_feeds_data_exporter.