Le applicazioni batch sono applicazioni J2EE (Java 2 Platform Enterprise Edition) basate su Enterprise Java Beans (EJB). Tali applicazioni sono conformi a una serie di interfacce definite che consentono all'ambiente di esecuzione batch di gestire l'esecuzione di processi batch destinati alle applicazioni.
Operazioni dei processi batch.
Un processo batch può essere costituito da una o più operazioni batch. Dividendo un'applicazione batch in più operazioni è possibile separare le attività distinte. Un'operazione batch viene implementata come bean di entità permanente gestito dal contenitore che utilizza le interfacce fornite da WebSphere. L'interfaccia aziendale, com.ibm.websphere.batch.BatchJobStepLocalInterface, di un EJB di un'operazione batch fornisce i metodi che l'ambiente di esecuzione batch richiama per controllare un'applicazione batch.
Nel descrittore di distribuzione, un'applicazione batch è richiesta per dichiarare un bean di sessione stateless speciale. Tale bean funziona da controller dei processi batch e deve contenere i riferimenti dei bean enterprise a tutti i bean enterprise dell'operazione batch utilizzati nell'applicazione batch. L'implementazione di questo bean è fornita da WebSphere e non dall'applicazione batch; essa deve solo essere dichiarata nel descrittore di distribuzione dell'applicazione. È possibile definire soltanto un bean di controller per applicazione batch.
Un'operazione batch può avere dei flussi di dati batch associati. Un flusso di dati batch (batch data stream, BDS) è una classe java che implementa l'interfaccia com.ibm.websphere.batch.BatchDataStream. Un BDS è un oggetto Java che legge il flusso di input che contiene i dati da elaborare mediante un'operazione batch. Un BDS può essere anche un flusso di output che scrive i dati invece di leggerli.
I metodi sull'interfaccia BatchDataStream consentono all'ambiente di esecuzione batch di gestire il flusso di dati utilizzato da un'operazione batch. Ad esempio, uno dei metodi richiama le informazioni sul cursore correnti dal flusso per tenere traccia della quantità di dati che sono stati elaborati dall'operazione batch.
Algoritmi dei punti di controllo
L'ambiente di esecuzione batch utilizza gli algoritmi dei punti di controllo per decidere la frequenza con cui eseguire il commit delle transazioni globali dalle quali vengono richiamate le operazioni batch. La definizione xJCL di un processo batch definisce gli algoritmi da utilizzare. Le proprietà specificate per gli algoritmi dei punti di controllo in xJCL consentono la personalizzazione del funzionamento del punto di controllo, come i timeout della transazioni e gli intervalli dei punti di controllo, per le operazioni batch. WebSphere Extended Deployment fornisce algoritmi dei punti di controllo basati sull'orario e basati sui record. Viene fornita anche SPI dell'algoritmo per creare ulteriori algoritmi personalizzati.
Compressione
Un'applicazione batch viene assemblata come applicazione EJB J2EE standard all'interno di un file EAR J2EE. I bean enterprise di entità dell'operazione batch e le classi dei flussi di dati batch utilizzati dalle operazioni batch devono essere assemblati all'interno dell'applicazione. Il bean del controller dei processi batch deve inoltre essere dichiarato nel descrittore di distribuzione del bean enterprise di ogni applicazione batch. È possibile utilizzare gli strumenti di sviluppo J2EE standard per sviluppare e assemblare l'EAR dell'applicazione batch.
Gli algoritmi dei risultati rappresentano una funzione opzionale del modello di programmazione batch. Tali algoritmi vengono applicati alle operazioni batch in base ai codici di ritorno e vengono utilizzati per modificare i codici di ritorno dei processi batch. Inoltre, funzionano da segnaposto per i trigger basati sui codici di ritorno delle operazioni.
Related concepts
Sviluppo delle applicazioni a lunga durata