Journal consuma troppo spazio su disco e rallenta le prestazioni delle applicazioni

Sintomi

Con una configurazione predefinita di FileJournal in atto, a seconda dell'attività nell'archivio, verranno creati nel tempo molti file di log Journal. Questo potrebbe causare problemi di spazio su disco e problemi di prestazioni nelle applicazioni che utilizzano CRX.

Causa

La configurazione predefinita del Journal consente teoricamente un numero illimitato di file di log ruotati.

Risoluzione

A seconda del setup, la configurazione è leggermente diversa e viene eseguita nel repository.xml. Per i dettagli sui singoli parametri di configurazione, fai riferimento all'articolo Journal configuration article.

NOTA: fai un backup dell'istanza prima di applicare qualsiasi modifica!

Versione CQ / CRX Area geografica
5.2.x / 1.4.2 crx-quickstart/server/runtime/0/_crx/WEB-INF/repository.xml
5.3 / 2.0 crx-quickstart/repository/repository.xml
5.5 / 2.3 crx-quickstart/repository/repository.xml

Oltre alla riconfigurazione del FileJournal, è necessario ripulire il Journal esistente. Nota: come prerequisito per gli ambienti CRX di cluster si consiglia vivamente di lasciare che tutti i cluster-nodi si sincronizzino completamente alla stessa revisione dello schema prima di applicare le seguenti modifiche:

  1. arresta (tutte) le istanze CRX
  2. se disponi di un cluster di nodi multipli, verifica che tutti i nodi siano sincronizzati con la revisione corrente.
    1. Per ogni nodo del cluster, verifica che il numero di revisione in crx-quickstart/repository/revision.log corrisponda a crx-quickstart/repository/shared/journal/revision
    2. I numeri di revisione sono memorizzati in formato binario, che su Linux ti permette di utilizzare il comando diff per confrontarli. In Windows è possibile utilizzare un binario supportato da uno strumento diff come WinMerge
  3. cancella TUTTI i file seguenti crx-quickstart/repository/shared/journal
  4. cancella crx-quickstart/repository/revision.log
  5. applica la riconfigurazione del Journal
  6. avvia (tutte) le istanze CRX

 

Ambiente non cluster

In un ambiente non cluster in cui CRX è in esecuzione autonoma, si raccomanda di configurare la dimensione massima di un file di log Journal a 100 MB e di limitare il numero di file consentiti a 1. Questo è più che sufficiente per una configurazione come questa.

<Journal class="com.day.crx.core.journal.FileJournal"> <param name="sharedPath" value="${rep.home}/shared"/> <param name="maximumSize" value="104857600" /> <param name="maximumFiles" value="1" /> </Journal> 

 

Ambiente in cluster

Se CRX è in esecuzione in un cluster con altre istanze CRX, si raccomanda di regolare il numero di file di log Journal ruotati. Il Journal tiene traccia di tutte le operazioni di salvataggio del repository, quindi a seconda di quanto tempo un cluster-nodo slave può essere offline prima di essere in grado di recuperare il ritardo con l'ultima revisione dell'istanza del cluster-nodo master, è possibile configurare 2 parametri per soddisfare i requisiti:

  • maximumAge: validità massima di un file Journal prima della rimozione
  • maximumFiles: numero massimo di rotazioni di registro consentite

 

<Journal class="com.day.crx.core.journal.FileJournal"> <param name="sharedPath" value="${rep.home}/shared"/> <param name="maximumSize" value="104857600" /> <param name="maximumAge" value="P1M" /> <param name="maximumFiles" value="10" /> </Journal> 
Ruota tarjournal in shared-nothing clustering
Da CRX 2.2 in poi viene utilizzato il nuovo TarJournal, che implementa il journaling utilizzando il formato file TarPM avanzato e il protocollo di sincronizzazione del cluster, che funziona in modalità shared nothing.  Il valore predefinito di dimensione massima del file è 256 MB. Mentre questo valore predefinito va bene nella maggior parte dei casi. Il valore massimo è di 1 GB Per maggiori dettagli su altri parametri clicca qui. I cambiamenti vengono attuati dal prossimo utilizzo di Tar Optimization.  Di seguito è riportato un esempio di rotazione che si verifica ogni 24 ore
<Journal class="com.day.crx.persistence.tar.TarJournal">     <param name="maxFileSize" value="256"/>     <param name="maximumAge" value="PT24H"/> </Journal> 

Prodotti interessati:

CRX1.4.2, CRX2.0, CRX2.2, CRX2.3

Logo Adobe

Accedi al tuo account