與SaaS資料匯出同步資料
當您安裝需要資料匯出的Commerce服務(例如「目錄服務」、「即時搜尋」或「產品Recommendations」)時,會安裝Saas資料匯出模組的集合以管理資料收集和同步程式。
SaaS資料匯出會持續將產品資料從Adobe Commerce執行個體移至Commerce Services平台,以保持資料在最新狀態。 例如,產品Recommendations需要最新的目錄資訊,才能正確地傳回具有正確名稱、定價和可用性的建議。 使用資料管理儀表板來觀察和管理同步化程式,或是使用命令列介面來觸發同步化並重新索引產品資料,以供Commerce服務使用。
下圖顯示SaaS資料匯出流程。
Adobe Commerce的 {width="900" modal="regular"}
SaaS資料匯出流程的主要元件包括:
- SaaS資料匯出模組會從Adobe Commerce收集摘要資料、組合摘要專案、監聽更新,並保留摘要狀態。
- SaaS匯出模組,可匯出資料、設定路由,以及將摘要發佈至連線的服務。
- Adobe Commerce服務會管理資料擷取程式,以驗證傳入的摘要並保留連線服務的更新。
同步模式
SaaS資料匯出有兩種模式可處理實體摘要:
-
立即匯出模式 — 在此模式中,會收集資料並在單一反複專案中立即傳送至Commerce服務。 此模式可加快將實體更新傳送至Commerce服務的速度,並降低摘要表格的儲存大小。
-
舊版匯出模式 — 在此模式中,資料會以單一程式收集。 然後,cron作業會將收集的資料傳送至連線的商務服務。 在資料匯出記錄專案中,使用舊版模式的摘要會標示為
(legacy)
。
同步型別
SaaS資料匯出支援三種同步型別:完全同步、部分同步和重試失敗專案同步。
完全同步
將Adobe Commerce執行個體連線至Commerce服務後,執行完整同步以將實體摘要資料從Adobe Commerce傳送至連線的服務。
部分同步
透過部分同步,SaaS資料匯出會自動從Commerce應用程式將更新(例如產品名稱變更或價格更新)傳送至連線的商務服務。
資料匯出程式會使用下列cron作業來自動化部分同步作業。
-
「索引」cron群組工作:
indexer_reindex_all_invalid
工作會重新索引所有無效的摘要。 這是標準的Adobe Commerce cron工作。saas_data_exporter
工作適用於舊版匯出摘要。sales_data_exporter
工作特定於銷售資料匯出摘要。
這些工作每分鐘執行一次。
為了讓部分同步運作,Commerce應用程式需要下列設定:
-
所有SaaS資料匯出索引子都是以
Update by Schedule
模式設定。在SaaS資料匯出103.1.0版和更新版本中,
Update by Schedule
模式預設為啟用。 您可以使用Commerce CLI命令bin/magento indexer:show-mode | grep -i feed
來驗證伺服器上的索引組態
重試失敗的專案同步
「重試失敗的專案」同步會使用個別程式來重新傳送因同步處理期間發生錯誤(例如應用程式錯誤、網路中斷或SaaS服務錯誤)而無法同步的專案。 此同步的實作也以cron作業為基礎。
resync_failed_feeds_data_exporter
cron群組工作:<feed name>_feed_resend_failed_feeds_items
工作會重新傳送無法同步處理的專案,例如products_feed_resend_failed_items
。
檢視及管理同步化程式
大多數同步化活動會根據應用程式組態自動處理。 不過,SaaS資料匯出也提供管理程式的工具。
驗證Commerce應用程式設定
部分同步和重試失敗專案同步僅在Commerce執行個體已正確設定時運作。 通常,設定會在設定Commerce服務時完成。 如果資料匯出無法正常運作,請檢查下列設定。
資料傳輸記錄的事件管理器通知
在103.3.4版或更新版本中,從Commerce執行個體傳送資料給Adobe Commerce服務時,SaaS Data Export會傳送data_sent_outside
事件。
$this->eventManager->dispatch(
"data_sent_outside",
[
"timestamp" => time(),
"type" => $metadata->getFeedName(),
"data" => $data
]
);