Eventi AEM
Scopri gli eventi AEM, cosa è, perché e quando usarlo ed esempi.
Che cos’è
AEM Eventing è un sistema di gestione degli eventi nativo per il cloud che consente di abbonarsi agli eventi AEM per l’elaborazione in sistemi esterni. Un evento AEM è una notifica di modifica dello stato inviata dall’AEM ogni volta che si verifica un’azione specifica. Ad esempio, può includere eventi quando un frammento di contenuto viene creato, aggiornato o eliminato.
Il diagramma precedente ha visualizzato il modo in cui AEM as a Cloud Service produce gli eventi e li invia agli Eventi Adobe I/O, che a loro volta li espone agli abbonati agli eventi.
In sintesi, i componenti principali sono tre:
- Provider eventi: AEM as a Cloud Service.
- Eventi di Adobe I/O: piattaforma per sviluppatori per l'integrazione, l'estensione e la creazione di app ed esperienze basate sui prodotti e le tecnologie Adobe.
- Consumatore evento: Sistemi di proprietà del cliente che si abbonano agli eventi AEM. Ad esempio, CRM (Customer Relationship Management), PIM (Product Information Management), OMS (Order Management System) o un'applicazione personalizzata.
Qual è la differenza?
L'evento Apache Sling, l'evento OSGi e l'osservazione JCR offrono tutti i meccanismi per sottoscrivere ed elaborare gli eventi. Tuttavia, questi sono distinti dall’evento AEM discusso in questa documentazione.
Le distinzioni chiave degli eventi AEM comprendono:
- Il codice consumer dell’evento viene eseguito al di fuori dell’AEM, non nella stessa JVM dell’AEM.
- Il codice prodotto AEM è responsabile della definizione degli eventi e del loro invio agli Eventi Adobi I/O.
- Le informazioni sull’evento sono standardizzate e inviate in formato JSON. Per ulteriori dettagli, consulta cloudevents.
- Per comunicare nuovamente con l’AEM, il consumatore dell’evento utilizza l’API AEM as a Cloud Service.
Perché e quando usarlo
AEM Eventing offre numerosi vantaggi in termini di architettura del sistema ed efficienza operativa. I motivi principali per utilizzare l’evento AEM includono:
- Creare architetture basate su eventi: facilita la creazione di sistemi liberamente accoppiati che possono essere scalati in modo indipendente e resistenti agli errori.
- Codice ridotto e costi operativi ridotti: evita le personalizzazioni in AEM e rende i sistemi più facili da gestire ed estendere, riducendo in tal modo le spese operative.
- Semplifica la comunicazione tra AEM e i sistemi esterni: elimina le connessioni point-to-point consentendo agli eventi Adobi I/O di gestire le comunicazioni, ad esempio determinando quali eventi AEM devono essere consegnati a sistemi o servizi specifici.
- Maggiore durata degli eventi: Adobe I/O Events è un sistema altamente disponibile e scalabile, progettato per gestire grandi volumi di eventi e distribuirli in modo affidabile agli abbonati.
- Elaborazione parallela degli eventi: consente la consegna di eventi a più abbonati contemporaneamente, consentendo l'elaborazione di eventi distribuiti in vari sistemi.
- Sviluppo di applicazioni senza server: supporta la distribuzione del codice consumer di eventi come applicazione senza server, migliorando ulteriormente la flessibilità e la scalabilità del sistema.
Limitazioni
L'AEM Eventing, pur essendo potente, ha alcune limitazioni da considerare:
- Disponibilità limitata ad AEM as a Cloud Service: al momento, l'evento AEM è disponibile esclusivamente per AEM as a Cloud Service.
- Supporto limitato per eventi: al momento sono supportati solo gli eventi di Frammento di contenuto AEM. Tuttavia, si prevede che il campo di applicazione si espanderà con l'aggiunta di ulteriori eventi in futuro.
Come abilitare
L’evento AEM è abilitato per ogni ambiente AEM as a Cloud Service ed è disponibile solo per gli ambienti in modalità pre-release. Contatta il team di gestione degli eventi AEM per abilitare l'ambiente AEM con gli eventi AEM.
Se è già abilitato, consulta Abilitare gli eventi AEM nell'ambiente AEM Cloud Service per i passaggi successivi.
Iscrizione
Per sottoscrivere gli eventi AEM, non è necessario scrivere codice in AEM, ma è configurato un progetto Adobe Developer Console. Adobe Developer Console è un gateway per Adobe per API, SDK, eventi, runtime e App Builder.
In questo caso, un progetto in Adobe Developer Console ti consente di abbonarti agli eventi emessi dall'ambiente AEM as a Cloud Service e di configurare la consegna degli eventi ai sistemi esterni.
Per ulteriori informazioni, vedere Iscrizione a eventi AEM in Adobe Developer Console.
Come consumare
Esistono due metodi primari per l'utilizzo degli eventi AEM: il metodo push e il metodo pull.
- Metodo push: in questo approccio, il consumatore dell'evento riceve una notifica proattiva da Adobe I/O Events quando un evento diventa disponibile. Le opzioni di integrazione includono Webhook, Adobe I/O Runtime e Amazon EventBridge.
- Metodo pull: il consumer dell'evento esegue il polling attivo degli eventi di Adobe I/O per verificare la presenza di nuovi eventi. L’opzione di integrazione principale per questo metodo è l’API di Adobe Developer Journaling.
Per ulteriori informazioni, vedere Elaborazione di eventi AEM tramite eventi Adobe I/O.