Spring Batch - Panoramica
Batch processingè una modalità di elaborazione che prevede l'esecuzione di serie di lavori complessi automatizzati senza l'interazione dell'utente. Un processo batch gestisce i dati in blocco e viene eseguito per molto tempo.
Diverse applicazioni aziendali richiedono l'elaborazione di dati enormi per eseguire operazioni che coinvolgono:
Eventi basati sul tempo come calcoli periodici.
Applicazioni periodiche che vengono elaborate ripetutamente su set di dati di grandi dimensioni.
Applicazioni che si occupano dell'elaborazione e della convalida dei dati disponibili in modo transazionale.
Pertanto, l'elaborazione in batch viene utilizzata nelle applicazioni aziendali per eseguire tali transazioni.
Cos'è Spring Batch
Il lotto primaverile è un file lightweight framework che viene utilizzato per sviluppare Batch Applications che vengono utilizzati nelle applicazioni aziendali.
Oltre all'elaborazione in blocco, questo framework fornisce funzioni per:
- Compresi la registrazione e la traccia
- Gestione delle transazioni
- Statistiche sull'elaborazione del lavoro
- Riavvio del lavoro
- Salta e gestione delle risorse
È inoltre possibile ridimensionare le applicazioni batch di molle utilizzando le sue tecniche di porzionamento.
Caratteristiche di Spring Batch
Di seguito sono riportate le caratteristiche principali di Spring Batch:
Flexibility- Le applicazioni Spring Batch sono flessibili. È sufficiente modificare un file XML per modificare l'ordine di elaborazione in un'applicazione.
Maintainability- Le applicazioni Spring Batch sono di facile manutenzione. Un processo Spring Batch include passaggi e ogni passaggio può essere disaccoppiato, testato e aggiornato, senza influire sugli altri passaggi.
Scalability- Utilizzando le tecniche di porzionatura, è possibile ridimensionare le applicazioni Spring Batch. Queste tecniche ti consentono di:
Eseguire le fasi di un lavoro in parallelo.
Esegui un singolo thread in parallelo.
Reliability - In caso di guasto, è possibile riavviare il lavoro esattamente dal punto in cui era stato interrotto, disaccoppiando i passaggi.
Support for multiple file formats - Spring Batch fornisce supporto per un ampio set di lettori e scrittori come XML, file flat, CSV, MYSQL, Hibernate, JDBC, Mongo, Neo4j, ecc.
Multiple ways to launch a job - È possibile avviare un processo Spring Batch utilizzando applicazioni Web, programmi Java, riga di comando, ecc.
Oltre a questi, le applicazioni Spring Batch supportano:
Riprova automatica in caso di errore.
Monitoraggio dello stato e delle statistiche durante l'esecuzione del batch e dopo aver completato l'elaborazione del batch.
Per eseguire lavori simultanei.
Servizi come la registrazione, la gestione delle risorse, il salto e il riavvio dell'elaborazione.