Archivi file

Gli archivi di file utilizzano un file system per conservare le informazioni operative e per rendere persistenti gli oggetti di cui i motori di messaggistica hanno bisogno per il recupero in caso di errore.

Un archivio file è un tipo di archivio di messaggi che utilizza direttamente i file in un file system tramite il sistema operativo. L'archivio dati in un archivio file è suddiviso in tre livelli: il file di log, il file di archivio permanente e il file di archivio temporaneo.

Figura 1. La relazione tra un motore di messaggistica e il relativo archivio file
Un motore di messaggistica utilizza un'origine dati JDBC per gestire l'interazione con un archivio dati, contenuto in un database
File di log
Questo file contiene informazioni sulle transazioni attualmente attive e i dati non ancora scritti in un file di archivio. Si tratta di un log circolare e la sua dimensione file è statica mentre un motore di messaggistica è in esecuzione, ma può essere modificato se necessario. Per rendere effettive le modifiche, è necessario riavviare il motore di messaggistica. La dimensione del file di log limita la dimensione massima di un messaggio che può essere inviato.
File archivio permanente
Questo file contiene dati permanenti conservati dopo il riavvio del motore di messaggistica, come i messaggi persistenti, i dati della coda e le informazioni sulla memoria e la trasmissione dei messaggi persistenti.
Il file di archivio permanente può essere configurato per avere una dimensione massima e minima o per avere una dimensione illimitata. Il file può crescere dalla dimensione minima (o come richiesto nel caso illimitato) ma non si ridurrà mai (anche se la dimensione massima è impostata su un valore inferiore alla dimensione corrente). Le dimensioni dei file possono essere modificate nella console di gestione, ma per rendere effettive le modifiche è necessario riavviare il motore di messaggistica.
Simile a un file system, quando i dati vengono eliminati dall'archivio, i dati nel file non vengono eliminati, vengono aggiornate solo le informazioni sulla directory. Ciò significa che se un messaggio viene utilizzato, i dati del messaggio potrebbero essere ancora presenti nel file di archivio, ma le informazioni sulla directory che includono questi dati nel negozio vengono aggiornate per riflettere il fatto che sono stati eliminati.
File di archivio temporaneo
Questo file contiene dati temporanei che non vengono conservati dopo il riavvio del motore di messaggistica, come i messaggi non persistenti che sono stati trasferiti nell'archivio file per liberare memoria dall'heap dell' JVM. Il contenuto del file di archivio temporaneo viene troncato all'avvio del motore di messaggistica.
Il file di archivio temporaneo può essere configurato per avere una dimensione massima e minima o per avere una dimensione illimitata. Il file può crescere dalla dimensione minima (o come richiesto nel caso illimitato) ma non si ridurrà mai (anche se la dimensione massima è impostata su un valore inferiore alla dimensione corrente). Le dimensioni dei file possono essere modificate nella console di gestione, ma per rendere effettive le modifiche è necessario riavviare il motore di messaggistica.
Simile a un file system, quando i dati vengono eliminati dall'archivio, i dati nel file non vengono eliminati, vengono aggiornate solo le informazioni sulla directory. Ciò significa che se un messaggio viene utilizzato, i dati del messaggio potrebbero essere ancora presenti nel file di archivio, ma le informazioni sulla directory che includono questi dati nel negozio vengono aggiornate per riflettere il fatto che sono stati eliminati.

È possibile configurare dove devono essere collocati i file dell'archivio file. Per default, l'archivio file utilizza una directory secondaria nel seguente percorso: ${USER_INSTALL_ROOT}/filestores/com.ibm.ws.sib/${ME_NAME}. La directory dell'archivio file contiene altre due directory; la directory di log che contiene il file di log e la directory di archivio che contiene i file PermanentStore e TemporaryStore .

Importante : non eliminare alcun file dell'archivio file. La loro eliminazione può causare il danneggiamento dell'archivio messaggi. Se uno o più di questi file vengono eliminati accidentalmente, eliminare i restanti file e riavviare il motore di messaggistica. In questo modo, il motore di messaggistica può essere riavviato in uno stato pulito anche se i messaggi andranno persi.