Questo contenuto descrive le impostazioni facoltative che è possibile configurare per migliorare le prestazioni del server dell'applicazione dei moduli AEM.
AEM moduli utilizza l'archivio moduli AEM come origine dati. L'archivio moduli AEM memorizza le risorse delle applicazioni e, in fase di esecuzione, i servizi possono recuperare le risorse dall'archivio nel corso del processo aziendale automatizzato.
L'accesso all'origine dati può essere significativo, a seconda del numero di moduli AEM in esecuzione e del numero di utenti simultanei che accedono all'applicazione. L'accesso all'origine dati può essere ottimizzato utilizzando il pool di connessioni. Il pool di connessioni è una tecnica utilizzata per evitare il sovraccarico necessario per creare nuove connessioni al database ogni volta che un'applicazione o un oggetto server richiede l'accesso al database. Il pool di connessioni è in genere utilizzato nelle applicazioni Web e aziendali ed è in genere gestito da un server applicazione, ma non solo a esso.
È importante configurare correttamente i parametri del pool di connessioni in modo da non esaurire mai le connessioni, il che può causare il deterioramento delle prestazioni dell'applicazione.
Per configurare correttamente le impostazioni del pool di connessioni, è importante che l'amministratore del server applicazioni controlli il pool di connessioni nelle ore di punta del giorno. Il monitoraggio assicura che siano sempre disponibili connessioni sufficienti per applicazioni e utenti. La maggior parte dei server applicazioni include strumenti di monitoraggio.
È possibile monitorare diverse statistiche per ogni istanza di origine dati JDBC nel dominio utilizzando la console di amministrazione del server WebLogic. Per ulteriori informazioni, consulta la documentazione WebLogic.
Quando l'amministratore del server applicazioni determina le impostazioni corrette del pool di connessioni, deve comunicare tali informazioni all'amministratore del database. L'amministratore del database necessita di queste informazioni perché il numero di connessioni al database è uguale al numero di connessioni nel pool di connessioni per l'origine dati. Quindi, completare i passaggi per configurare le impostazioni del pool di connessioni per il server applicazione e il tipo di origine dati come descritto di seguito.
In Struttura dominio, fare clic su Servizi > JDBC > Origini dati e, nel riquadro a destra, fare clic su IDP_DS.
Nella schermata successiva, fate clic sulla scheda Configurazione > Pool di connessioni e immettete un valore nelle caselle seguenti:
Fate clic su Salva, quindi su Attiva modifiche.
Riavviare il server gestito WebLogic.
In Centro modifiche, fate clic su Blocca e modifica.
In Struttura dominio, fare clic su Servizi > JDBC > Origini dati e, nel riquadro a destra, fare clic su EDC_DS.
Nella schermata successiva, fate clic sulla scheda Configurazione > Pool di connessioni e immettete un valore nelle caselle seguenti:
Fate clic su Salva, quindi su Attiva modifiche.
Riavviare il server gestito WebLogic.
Se si elaborano in genere documenti di dimensioni relativamente ridotte, è possibile migliorare le prestazioni associate alla velocità di trasferimento del documento e allo spazio di archiviazione. A tal fine, implementa le seguenti configurazioni di prodotto AEM moduli:
La dimensione massima in linea e le directory di memorizzazione (la directory AEM dei file temporanei e la directory GDS) sono configurate nella console di amministrazione.
Quando un documento inviato per l'elaborazione da AEM moduli è minore o uguale alla dimensione inline massima predefinita del documento, il documento viene memorizzato sul server in linea e serializzato come oggetto Document Adobe. La memorizzazione dei documenti in linea può comportare notevoli vantaggi in termini di prestazioni. Tuttavia, se si utilizza il flusso di lavoro dei moduli, il contenuto potrebbe anche essere memorizzato nel database a scopo di monitoraggio. Pertanto, l'aumento della dimensione massima in linea potrebbe influenzare la dimensione del database.
Nel file system locale viene memorizzato un documento con dimensioni superiori a quelle massime. L'oggetto Document del Adobe che viene trasferito da e verso il server è solo un puntatore al file.
Quando il contenuto del documento è inline (ovvero inferiore alla dimensione massima in linea), il contenuto viene memorizzato nel database come parte del payload di serializzazione del documento. Pertanto, l'aumento della dimensione massima in linea può influenzare la dimensione del database.
Modificare la dimensione massima in linea
Nella console di amministrazione, fate clic su Settings (Impostazioni) > Core System Settings (Impostazioni sistema di base) > Configurations (Configurazioni).
Immettete un valore nella casella Dimensioni inline massime documento predefinite e fate clic su OK.
Il valore della proprietà Dimensione in linea massima documento deve essere identico per AEM Forms nell'ambiente JEE e AEM Forms nel bundle OSGi incluso AEM Forms nell'ambiente JEE. Questo passaggio ha aggiornato il valore solo per AEM Forms sull'ambiente JEE e non per AEM Forms sul bundle OSGi incluso AEM Forms sull'ambiente JEE.
Riavviate il server applicazione con la seguente proprietà di sistema:
com.adobe.idp.defaultDocumentMaxInlineSize=[value specified in Step 2]
Le proprietà di sistema sopra menzionate sostituiscono il valore della proprietà Document Max Inline Size impostata per AEM Forms nell'ambiente JEE e AEM Forms nel bundle OSGi incluso AEM Forms nell'ambiente JEE.
La dimensione massima predefinita in linea è 65536 byte.
Un aumento della dimensione massima in linea richiede più memoria per la memorizzazione dei documenti serializzati. Pertanto, in genere richiede anche un aumento della dimensione massima dell'heap JVM.
Un sistema sovraccarico che elabora molti documenti può rapidamente saturare la memoria heap JVM. Per evitare un OutOfMemoryError, aumentare la dimensione massima dell'heap JVM di un importo corrispondente alla dimensione dei documenti in linea moltiplicata per il numero di documenti generalmente eseguiti in un dato momento.
Aumento della dimensione massima dell'heap JVM = (dimensione documenti in linea) x (numero medio di documenti elaborati).
Calcolo della dimensione massima dell'heap JVM
In questo esempio, l'heap massimo JVM corrente è impostato su 512 MB e la dimensione massima in linea è 64 KB. Il server deve essere configurato per lo scenario in cui 10 processi vengono eseguiti contemporaneamente e ogni processo ha 9 file di input e 1 file di risultati (un totale di 10 file per processo e 100 file elaborati contemporaneamente). Tutti i file hanno dimensioni inferiori a 512 KB.
Per memorizzare tutti i file in linea, impostate la dimensione massima in linea su almeno 512 KB.
L'aumento richiesto nella dimensione massima dell'heap JVM è calcolato utilizzando la seguente equazione:
(512 KB) x (100) = 51200 KB, o 50 MB
La dimensione massima dell'heap JVM deve essere aumentata di 50 MB per un totale di 562 MB.
Considerazione della frammentazione dell'heap
Se si impostano le dimensioni dei documenti in linea su valori elevati, si aumenta il rischio di un errore OutOfMemoryError sui sistemi che sono inclini a un'elevata frammentazione. Per memorizzare un documento in linea, la memoria heap JVM deve disporre di spazio contiguo sufficiente. Alcuni sistemi operativi, JVM e algoritmi di raccolta dei rifiuti sono inclini ad accumulare la frammentazione. La frammentazione riduce la quantità di spazio heap contiguo e può portare a un OutOfMemoryError anche quando esiste spazio totale sufficiente.
Ad esempio, le operazioni precedenti sul server delle applicazioni hanno lasciato l'heap JVM in uno stato frammentato e il Garbage Collector non è in grado di comprimere l'heap abbastanza da recuperare grandi blocchi di spazio libero. È possibile che si verifichi un errore OutOfMemory anche se la dimensione massima dell'heap JVM è stata regolata in modo da aumentare la dimensione massima in linea.
Per tenere conto della frammentazione dell'heap, la dimensione del documento in linea non deve essere superiore allo 0,1% della dimensione totale dell'heap. Ad esempio, una dimensione massima dell'heap JVM di 512 MB può supportare una dimensione massima in linea di 512 MB x 0.001 = 0,512 MB, o 512 KB.
Questa sezione descrive le impostazioni specifiche di un ambiente WebSphere Application Server.
Se si esegue Configuration Manager o si tenta di generare codice di implementazione JavaBeans Enterprise (EJB) utilizzando l'utilità della riga di comando ejbdeployment e si verifica un errore OutOfMemory, aumentare la quantità di memoria allocata alla JVM.
Modificate lo script ejbdeployment nella directory [appserver root]/deploytool/itp/:
ejbdeploy.bat
ejbdeploy.sh
Trovate il parametro -Xmx256M
e modificatelo in un valore più alto, ad esempio -Xmx1024M
.
Salvate il file.
Eseguire il comando ejbdeploy
o ridistribuire utilizzando Configuration Manager.
Questo contenuto descrive le impostazioni specifiche di un ambiente del sistema operativo Microsoft Windows Server 2003.
L'utilizzo del pool di connessioni sulla connessione di ricerca può ridurre il numero di porte necessarie fino al 50%. Questo perché la connessione utilizza sempre le stesse credenziali per un determinato dominio e il contesto e gli oggetti correlati sono chiusi in modo esplicito.
Fare clic su Start > Esegui per avviare l'editor del Registro di sistema e, nella casella Apri, digitare regedit
e fare clic su OK.
Vai alla chiave del Registro di sistema HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
Nel riquadro a destra dell’editor del Registro di sistema, individuate il nome del valore TcpTimedWaitDelay. Se il nome non viene visualizzato, selezionate Modifica > Nuovo > Valore DWORD dalla barra dei menu per aggiungere il nome.
Nella casella Nome, digitare TcpTimedWaitDelay
Se non viene visualizzato un cursore lampeggiante e New Value #
all'interno della casella, fare clic con il pulsante destro del mouse nel pannello di destra, selezionare Rinomina e digitare TcpTimedWaitDelay
nella casella Nome.
Ripetere il passaggio 4 per i nomi dei valori MaxUserPort, MaxHashTableSize e MaxFreeTcbs.
Fate doppio clic nel riquadro a destra per impostare il valore TcpTimedWaitDelay. In Base, selezionare Decimale e, nella casella Valore, digitare 30
.
Fare doppio clic nel riquadro di destra per impostare il valore MaxUserPort. In Base, selezionare Decimale e, nella casella Valore, digitare 65534
.
Fare doppio clic nel riquadro di destra per impostare il valore MaxHashTableSize. In Base, selezionare Decimale e, nella casella Valore, digitare 65536
.
Fare doppio clic nel riquadro di destra per impostare il valore MaxFreeTcbs. In Base, selezionare Decimale e, nella casella Valore, digitare 16000
.
Si possono verificare gravi problemi se si modifica il Registro di sistema in modo errato utilizzando l'Editor del Registro di sistema o utilizzando un altro metodo. Questi problemi possono richiedere la reinstallazione del sistema operativo. Modificare il registro a proprio rischio.