Lo scaricamento distribuisce le attività di elaborazione che corrispondono alle istanze di Experience Manager in una topologia. Con lo scaricamento, è possibile utilizzare istanze di Experience Manager specifiche per eseguire tipi specifici di elaborazione. L'elaborazione specializzata consente di ottimizzare l'utilizzo delle risorse server disponibili.
Lo scaricamento è basato sulle funzioni Apache Sling Discovery e Sling JobManager. Per utilizzare lo scaricamento, è necessario aggiungere cluster di Experience Manager a una topologia e identificare gli argomenti del processo che il cluster elabora. I cluster sono costituiti da una o più istanze di Experience Manager, in modo che una singola istanza sia considerata un cluster.
Per informazioni sull'aggiunta di istanze a una topologia, consulta Amministrazione di topologie.
Sling JobManager e JobConsumer consentono la creazione di processi elaborati in una topologia:
Quando JobManager crea un processo, il framework Offloading seleziona un cluster di Experience Manager nella topologia per eseguire il processo:
Per informazioni sul miglioramento della distribuzione dei processi, consulta Configurazione del consumo di argomenti .
Quando il framework di offload seleziona un cluster per eseguire un processo e il cluster è composto da più istanze, Sling Distribution determina quale istanza nel cluster esegue il processo.
Il framework di offload supporta i payload dei processi che associano i processi alle risorse nell’archivio. I payload dei processi sono utili quando vengono creati processi per l’elaborazione delle risorse e il processo viene scaricato in un altro computer.
Al momento della creazione di un processo, è garantito che il payload si trovi solo nell’istanza che crea il processo. Durante lo scaricamento del processo, gli agenti di replica assicurano che il payload venga creato nell’istanza che alla fine consuma il processo. Al termine dell'esecuzione del processo, la replica inversa fa sì che il payload venga copiato nuovamente nell'istanza che ha creato il processo.
Le topologie sono cluster di Experienci Manager ad accoppiamento approssimativo che partecipano allo scarico. Un cluster è costituito da una o più istanze del server Experience Manager (una singola istanza è considerata un cluster).
Ogni istanza di Experience Manager esegue i seguenti servizi relativi allo scaricamento:
Il servizio di individuazione di tutti i membri della topologia punta al connettore topologia su uno dei membri. Nelle sezioni che seguono, questo membro è denominato membro principale.
Ogni cluster nella topologia contiene un'istanza riconosciuta come leader. Il cluster leader interagisce con la topologia per conto degli altri membri del cluster. Quando il riempimento iniziale lascia il cluster, viene automaticamente scelto un nuovo riempimento iniziale per il cluster.
Utilizza Browser topologia per esplorare lo stato della topologia a cui partecipa l’istanza di Experience Manager. Browser topologia mostra i cluster e le istanze della topologia.
Per ogni cluster viene visualizzato un elenco di membri del cluster che indica l'ordine in cui ogni membro è entrato nel cluster e quale membro è il membro Leader. La proprietà Current indica l'istanza attualmente amministrata.
Per ogni istanza del cluster, puoi vedere diverse proprietà relative alla topologia:
Utilizzando l’interfaccia utente touch, fai clic sulla scheda Strumenti . (http://localhost:4502/tools.html)
Nell'area Operazioni Granite fare clic su Scaricare il browser.
Nel pannello di navigazione fare clic su Browser topologia.
Vengono visualizzati i cluster che partecipano alla topologia.
Fai clic su un cluster per visualizzare un elenco delle istanze nel cluster e il relativo ID, stato corrente e stato iniziale.
Fai clic su un ID istanza per visualizzare le proprietà più dettagliate.
È inoltre possibile utilizzare la console Web per visualizzare informazioni sulla topologia. La console fornisce ulteriori informazioni sui cluster di topologia:
Utilizzare la procedura seguente per aprire la pagina Gestione topologia della console Web:
Apri la Web Console nel browser. (http://localhost:4502/system/console)
Fare clic su Principale > Gestione topologia.
Il servizio di individuazione basata sulle risorse Apache Sling viene eseguito su ogni istanza per controllare il modo in cui le istanze di Experience Manager interagiscono con una topologia.
Il servizio Discovery invia richieste periodiche di POST (heartbeat) ai servizi del connettore topologia per stabilire e mantenere connessioni con la topologia. Il servizio Connettore topologia gestisce un elenco consentiti di indirizzi IP o nomi host che possono essere aggiunti alla topologia:
Utilizza la Console web o un nodo sling:OsgiConfig per configurare le seguenti proprietà del servizio org.apache.sling.discovery.impt.Config:
Nome proprietà | Nome OSGi | Descrizione | Valore predefinito |
---|---|---|---|
Timeout Heartbeat (secondi) | heartbeatTimeout | Tempo in secondi di attesa di una risposta heartbeat prima che l'istanza di destinazione venga considerata non disponibile. | 20 |
Intervallo Heartbeat (secondi) | heartbeatInterval | La quantità di tempo in secondi tra gli heartbeat. | 15 |
Ritardo minimo dell’evento (secondi) | minEventDelay | Quando si verifica una modifica alla topologia, il tempo necessario per ritardare la modifica dello stato da TOPOLOGY_CHANGING a TOPOLOGY_CHANGED. Ogni modifica che si verifica quando lo stato è TOPOLOGY_CHANGING aumenta il ritardo di questo periodo di tempo. Questo ritardo impedisce agli ascoltatori di essere inondati da eventi. Per non utilizzare ritardi, specificare 0 o un numero negativo. |
3 |
URL del connettore topologico | topologyConnectorUrl | URL dei servizi Connettore topologia per l'invio di messaggi heartbeat. | http://localhost:4502/libs/sling/topology/connector |
Elenco consentiti del connettore topologico | topologyConnectorWhitelist | Elenco di indirizzi IP o nomi host consentiti dal servizio locale Connettore topologia nella topologia. | localhost 127.0.0.1 |
Nome descrittore archivio | leaderElectionRepositoryDescriptor | <nessun valore> |
Segui la procedura seguente per collegare un'istanza CQ al membro principale di una topologia. La procedura indirizza l'istanza all'URL del connettore topologia del membro della topologia principale. Eseguire questa procedura su tutti i membri della topologia.
Eseguire la procedura seguente sul membro principale della topologia. La procedura aggiunge i nomi degli altri membri della topologia al relativo elenco consentiti di Discovery Service.
Utilizza il browser di offload per configurare il consumo di argomenti per le istanze di Experience Manager nella topologia. Per ogni istanza, puoi specificare gli argomenti che consuma. Ad esempio, per configurare la topologia in modo che una sola istanza utilizzi argomenti di un tipo specifico, disattiva l’argomento su tutte le istanze tranne una.
I processi sono istanze di quantità distribuite per cui l’argomento associato è abilitato utilizzando la logica di arrotondamento.
Utilizzando l’interfaccia utente touch, fai clic sulla scheda Strumenti . (http://localhost:4502/tools.html)
Nell'area Operazioni Granite fare clic su Scaricare il browser.
Nel pannello di navigazione, fai clic su Scaricare il browser.
Vengono visualizzati gli argomenti di scaricamento e le istanze del server che possono utilizzare gli argomenti.
Per disabilitare il consumo di un argomento per un'istanza, sotto il nome del topc fai clic su Disattiva accanto all'istanza.
Per configurare il consumo di tutti gli argomenti per un'istanza, fai clic sull'identificatore di istanza sotto qualsiasi argomento.
Fai clic su uno dei pulsanti seguenti accanto a un argomento per configurare il comportamento di consumo per l’istanza, quindi fai clic su Salva:
Nota: quando selezioni Esclusivo per un argomento, tutti gli altri argomenti vengono automaticamente impostati su Disabilitato.
Diverse implementazioni JobConsumer sono installate con Experience Manager. Gli argomenti per i quali questi JobConsumers sono registrati vengono visualizzati in Offloading Browser. Gli argomenti aggiuntivi visualizzati sono quelli registrati da JobConsumers personalizzati. Nella tabella seguente viene descritto il valore predefinito JobConsumers.
Argomento del lavoro | PID di servizio | Descrizione |
---|---|---|
/ | org.apache.sling.event.impl.jobs.deprecated.EventAdminBridge | Installato con Apache Sling. Elabora i processi generati dall’amministratore dell’evento OSGi per garantire la compatibilità con le versioni precedenti. |
com/day/cq/replication/job/* | com.day.cq.replication.impl.AgentManagerImpl | Agente di replica che replica i payload del processo. |
com/adobe/granite/workflow/offload | com.adobe.granite.workflow.core.offloading.WorkflowOffloadingJobConsumer | Elabora i processi generati dal flusso di lavoro DAM Update Asset Offloader. |
Il servizio Apache Sling Job Consumer Manager fornisce proprietà di elenco consentiti e elenco Bloccati degli argomenti. Configura queste proprietà per abilitare o disabilitare l'elaborazione di argomenti specifici in un'istanza di Experience Manager.
Nota: se l'istanza appartiene a una topologia, puoi anche utilizzare Offloading Browser in qualsiasi computer della topologia per abilitare o disabilitare gli argomenti.
La logica che crea prima l'elenco degli argomenti abilitati consente tutti gli argomenti presenti nell'elenco consentiti e quindi rimuove gli argomenti presenti nell'elenco Bloccati. Per impostazione predefinita, tutti gli argomenti sono abilitati (il valore elenco consentiti è *
) e nessun argomento è disabilitato (l'elenco Bloccati non ha valore).
Utilizza la console Web o un nodo sling:OsgiConfig
per configurare le seguenti proprietà. Per i nodi sling:OsgiConfig
, il PID del servizio Job Consumer Manager è org.apache.sling.event.impl.jobs.JobConsumerManager.
Nome proprietà nella console Web | OSGi ID | Descrizione |
---|---|---|
Whitelist dell'argomento | job.consumermanager.whitelist | Elenco di argomenti elaborati dal servizio JobManager locale. Valore predefinito di * causa l'invio di tutti gli argomenti al servizio TopicConsumer registrato. |
Lista nera argomento | job.consumermanager.blacklist | Elenco di argomenti che il servizio JobManager locale non elabora. |
Il framework di offload utilizza la replica per trasportare le risorse tra autore e lavoratore. Il framework di offload crea automaticamente agenti di replica quando le istanze si uniscono alla topologia. Gli agenti vengono creati con valori predefiniti. È necessario modificare manualmente la password utilizzata dagli agenti per l’autenticazione.
Un problema noto con gli agenti di replica generati automaticamente richiede la creazione manuale di nuovi agenti di replica. Segui la procedura descritta in Problemi relativi all'utilizzo degli agenti di replica generati automaticamente prima di creare gli agenti per lo scaricamento.
Creare gli agenti di replica che trasportano i payload di lavoro tra le istanze per lo scaricamento. L’illustrazione seguente mostra gli agenti necessari per scaricare dall’autore a un’istanza di lavoro. L’autore ha un Sling ID di 1 e l’istanza di lavoro ha un Sling ID di 2:
Questa configurazione richiede i tre agenti seguenti:
Questo schema di replica è simile a quello utilizzato tra le istanze di authoring e pubblicazione. Tuttavia, per la situazione di scarico, tutte le istanze coinvolte sono istanze di authoring.
Il framework di offload utilizza la topologia per ottenere gli indirizzi IP delle istanze di offload. Il framework crea quindi automaticamente gli agenti di replica in base a questi indirizzi IP. Se in seguito gli indirizzi IP delle istanze di scaricamento cambiano, la modifica viene propagata automaticamente sulla topologia dopo il riavvio dell'istanza. Tuttavia, il framework di offload non aggiorna automaticamente gli agenti di replica per riflettere i nuovi indirizzi IP. Per evitare questa situazione, utilizza indirizzi IP fissi per tutte le istanze della topologia.
Utilizzare un formato specifico per la proprietà Name degli agenti di replica in modo che il framework di offload utilizzi automaticamente l'agente corretto per istanze di lavoro specifiche.
Denominazione dell'agente in uscita sull'istanza dell'autore:
offloading_<slingid>
, dove <slingid>
è l’ID Sling dell’istanza di lavoro.
Esempio: offloading_f5c8494a-4220-49b8-b079-360a72f71559
Denominazione dell’agente inverso nell’istanza di authoring:
offloading_reverse_<slingid>
, dove <slingid>
è l’ID Sling dell’istanza di lavoro.
Esempio: offloading_reverse_f5c8494a-4220-49b8-b079-360a72f71559
Denominazione della casella in uscita nell'istanza di lavoro:
offloading_outbox
Crea un Agente di replica sull'autore. (Vedi la documentazione relativa agli agenti di replica). Specificare un Titolo. Il Nome deve seguire la convenzione di denominazione.
Crea l'agente utilizzando le seguenti proprietà:
Proprietà | Valore |
---|---|
Impostazioni > Tipo di serializzazione | Predefiniti |
Transport >Transport URI | https://<ip of target instance> :<port> /bin/receive?sling:authRequestLogin=1 |
Trasporto >utente di trasporto | Utente di replica sull'istanza di destinazione |
Trasporto >Trasporta password | Password utente di replica nell'istanza di destinazione |
Extended > HTTP, metodo | POST |
Triggers > Ignora impostazioni predefinite | Vero |
Crea un Agente di replica inversa sull'autore. (Vedi la documentazione per gli agenti di replica.) Specificare un Titolo. Il Nome deve seguire la convenzione di denominazione.
Crea l'agente utilizzando le seguenti proprietà:
Proprietà | Valore |
---|---|
Impostazioni > Tipo di serializzazione | Predefiniti |
Transport >Transport URI | https://<ip of target instance> :<port> /bin/receive?sling:authRequestLogin=1 |
Trasporto >utente di trasporto | Utente di replica sull'istanza di destinazione |
Trasporto >Trasporta password | Password utente di replica nell'istanza di destinazione |
Extended > HTTP, metodo | GET |
Crea un Agente di replica sull'istanza di lavoro. (Vedi la documentazione per gli agenti di replica.) Specificare un Titolo. Il Nome deve essere offloading_outbox
.
Crea l'agente utilizzando le seguenti proprietà.
Proprietà | Valore |
---|---|
Impostazioni > Tipo di serializzazione | Predefiniti |
Transport >Transport URI | repo://var/replication/outbox |
Trigger > Ignora predefinito | Vero |
Ottieni l’ID Sling di un’istanza di Experience Manager utilizzando uno dei seguenti metodi:
Configura le istanze di una topologia in modo che istanze specifiche eseguano l’elaborazione in background delle risorse che vengono aggiunte o aggiornate in DAM.
Per impostazione predefinita, in Experience Manager viene eseguito il flusso di lavoro Aggiorna risorsa DAM quando una risorsa DAM cambia o una viene aggiunta a DAM. Modifica il comportamento predefinito in modo che l’Experience Manager esegua invece il flusso di lavoro DAM Update Asset Offloader. Questo flusso di lavoro genera un processo JobManager con argomento com/adobe/granite/workflow/offloading
. Quindi, configura la topologia in modo che il processo venga scaricato in un processo di lavoro dedicato.
Nessun flusso di lavoro deve essere transitorio quando viene utilizzato con lo scaricamento del flusso di lavoro. Ad esempio, il flusso di lavoro Aggiorna risorsa DAM non deve essere transitorio quando viene utilizzato per lo scaricamento delle risorse. Per impostare/annullare l’impostazione del flag transitorio su un flusso di lavoro, consulta Flussi di lavoro transitori.
La procedura seguente assume le seguenti caratteristiche per la topologia di scarico:
Su ogni istanza di Experience Manager, configura il servizio di individuazione in modo che punti al connettore principale Topography. (Consulta Configurazione dell'appartenenza alla topologia.)
Configura il connettore topografico principale in modo che le istanze di connessione siano sull'elenco consentiti.
Apri il browser Offloading e disabilita l'argomento com/adobe/granite/workflow/offloading
sulle istanze con cui gli utenti interagiscono per caricare o modificare le risorse DAM.
Per ogni istanza con cui gli utenti interagiscono per caricare o modificare le risorse DAM, configura i moduli di avvio del flusso di lavoro per utilizzare il flusso di lavoro DAM Update Asset Offloading :
Nelle istanze che eseguono l’elaborazione in background delle risorse DAM, disattiva i moduli di avvio del flusso di lavoro che eseguono il flusso di lavoro Risorsa di aggiornamento DAM .
Oltre ai dettagli presentati in questa pagina, puoi anche leggere quanto segue: