AEM事件

瞭解AEM事件、內容、使用原因及時機,並提供相關範例。

內容

AEM Eventing是雲端原生事件系統,可訂閱AEM Events以便在外部系統中處理。 AEM事件是每當特定動作發生時,AEM傳送的狀態變更通知。 例如,這可以包括建立、更新或刪除內容片段時的事件。

AEM事件

上圖以視覺效果呈現AEM as a Cloud Service如何產生事件,並將其傳送至Adobe I/O事件,事件事件接著會向事件訂閱者顯示。

總而言之,有三個主要元件:

  1. 事件提供者: AEM as a Cloud Service。
  2. Adobe I/O活動: ​根據Adobe的產品和技術整合、擴充及建置應用程式和體驗的開發人員平台。
  3. 事件消費者: ​由訂閱AEM事件的客戶所擁有的系統。 例如,CRM (客戶關係管理)、PIM (產品資訊管理)、OMS (Order Management系統)或自訂應用程式。

有何不同

Apache Sling事件、OSGi事件和JCR觀察所有提供者機制都會訂閱及處理事件。 不過,這些內容與本檔案中討論的AEM事件不同。

AEM Eventing的主要區別包括:

  • 事件取用者程式碼會在AEM外部執行,而不是在與AEM相同的JVM中執行。
  • AEM產品程式碼負責定義事件,並將其傳送至Adobe I/O事件。
  • 事件資訊會標準化,並以JSON格式傳送。 如需詳細資訊,請參閱cloudevents
  • 為了傳回AEM,事件取用者會使用AEM as a Cloud Service API。

使用它的原因與時機

AEM Eventing在系統架構和營運效率方面具備眾多優勢。 使用AEM Eventing的主要原因包括:

  • 建置事件導向架構:協助建立鬆散耦合的系統,可獨立擴充且可復原故障。
  • 低程式碼並降低營運成本:避免在AEM中進行自訂,讓系統更容易維護和擴充,進而減少營運費用。
  • 簡化AEM與外部系統之間的通訊:藉由讓Adobe I/O事件管理通訊(例如決定哪些AEM事件應該傳送到特定系統或服務),消除點對點連線。
  • 事件更耐用:Adobe I/O事件是高度可用且可擴充的系統,專為處理大量事件而設計,並可靠地提供給訂閱者。
  • 並行處理事件:啟用同時傳送事件給多個訂閱者,允許跨不同系統分散處理事件。
  • 無伺服器應用程式開發:支援將事件使用者程式碼部署為無伺服器應用程式,進一步增強系統彈性和擴充性。

限制

AEM事件雖然功能強大,但有一些需要考量的限制:

  • 可用性限製為AEM as a Cloud Service:目前,AEM Eventing僅適用於AEM as a Cloud Service。

  • 可用的事件型別:檢閱目前可用的事件型別清單這裡

如何啟用

如需後續步驟,請參閱在您的AEM Cloud Service環境中啟用AEM事件

如何訂閱

若要訂閱AEM Events,您不需要在AEM中撰寫任何程式碼,而是已設定Adobe Developer Console專案。 Adobe Developer Console是AdobeAPI、SDK、事件、執行階段和App Builder的閘道。

在這種情況下,Adobe Developer Console中的​ 專案 ​可讓您訂閱從AEM as a Cloud Service環境發出的事件,並設定事件傳送至外部系統。

如需詳細資訊,請參閱如何在Adobe Developer Console中訂閱AEM事件

使用方式

使用AEM事件的主要方法有兩種: 推播 ​方法和​ 提取 ​方法。

  • 推播方法:在此方法中,當事件變為可用時,Adobe I/O事件會主動通知事件消費者。 整合選項包括Webhooks、Adobe I/O Runtime和Amazon EventBridge。
  • 提取方法:在此處,事件消費者主動輪詢Adobe I/O事件以檢查新事件。 此方法的主要整合選項為Adobe Developer Journaling API。

如需詳細資訊,請參閱透過Adobe I/O事件處理的AEM事件

範例

在webhook上接收AEM活動

在webhook上接收AEM活動

使用Adobe提供的webhook接收AEM事件並檢視事件詳細資訊。

載入AEM事件日誌

載入AEM事件日誌

使用Adobe提供的網頁應用程式,從日誌載入AEM事件並檢閱事件詳細資訊。

接收Adobe I/O Runtime動作的AEM事件

接收Adobe I/O Runtime動作的AEM事件

接收AEM事件並檢閱事件詳細資料。

使用Adobe I/O Runtime動作處理的AEM事件

使用Adobe I/O Runtime動作處理的 AEM事件

瞭解如何使用Adobe I/O Runtime動作處理收到的AEM事件。 事件處理包括AEM回呼、事件資料持續性,以及在SPA中顯示它們。

recommendation-more-help
4859a77c-7971-4ac9-8f5c-4260823c6f69