Transactional batch and compute-intensive batch programming models
The product provides a transactional batch programming model and a compute-intensive programming model.
Both the transactional batch and compute-intensive programming models are implemented as Java objects. They are packaged into an EAR file for deployment into the application server environment. The individual programming models provide details on how the life cycle of the application and jobs submitted to it are managed by the grid endpoints. Central to all batch applications is the concept of a job to represent an individual unit of work to be run.
We can mix transactional batch, compute intensive, and native execution job steps. The run time uses a controller that is the same for every job, regardless of the type of steps that the job contains. The controller runs appropriate logic for the step, whether the step is a batch, compute-intensive, or native execution step. These different job step types can also be run in parallel.
The Java EE applications that the application server hosts typically perform short, lightweight, transactional units of work. In most cases, an individual request can be completed with seconds of processor time and relatively little memory. Many applications, however, must complete batch work that is computational and resource intensive. The batch function extends the application server to accommodate applications that must perform batch work alongside transactional applications. Batch work might take hours or even days to finish and uses large amounts of memory or processing power while it runs.
Related concepts
Compute-intensive programming model Batch programming model